{{message}}
语法只能在标签内容中使用
{{}}
这种语法叫做插值表达式,在插值表达式中可以写任何合法的js表达式
使用插件表达式,存在内容闪烁问题,但是v-text没有闪烁问题
<div id="app"> <p> {{message}} </p> <p v-text="message"></p> </div> <script src="./js/vue.js"></script>
<script> let vm = new Vue({ el:"#app", data:{ message:"hello vue" } }) </script>
在上面这段代码中,如果正常输出的话结果是一致的。
但是如果网速比较慢的话,插件表达式则会先在页面上输出
{{message}}
随后才会正常渲染页面,这样的效果对用户体验是不够好的。
<style> [v-cloak]:{ display:none; } </style> <div id="app"> <p v-cloak> {{message}} </p> <p v-text="message"></p> </div> <script src="./js/vue.js"></script>
我们可以使用v-cloak
属性在运行时让其隐藏,但因为在运行结束时vue
会自动删除v-cloak
属性
所以可以用这种方法来解决闪烁问题
插件表达式只会插入内容,不会覆盖原本的内容,而v-text
会覆盖掉原先的内容
<div id="app"> <p> ----{{message}}---- </p> // ----hello vue---- <p v-text="message">1234556</p> // hello vue </div> <script src="./js/vue.js"></script> <script> let vm = new Vue({ el:"#app", data:{ message:"hello vue" } }) </script>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理