学习vue我们必须之到它的7个属性,8个 方法,以及7个指令。787原则
-
el属性
-
用来指示vue编译器从什么地方开始解析 vue的语法,可以说是一个占位符。
-
data属性
-
用来组织从view中抽象出来的属性,可以说将视图的数据抽象出来存放在data中。
-
template属性
-
用来设置模板,会替换页面元素,包括占位符。
-
methods属性
-
放置页面中的业务逻辑,js方法一般都放置在methods中
-
render属性
-
创建真正的Virtual Dom
-
computed属性
-
用来计算
-
watch属性
-
watch:function(new,old){}
-
监听data中数据的变化
-
两个参数,一个返回新值,一个返回旧值,
<div id="app"> {{msg}} <div>这是模板的第一种使用方法1</div> </div> <template id="bot">这是模板的第三种使用方法,不常用3</template> <script> <div id="bot">模板的第四种创建方法4</div> </script> <script> var vm1 = new Vue({ data: { msg: "data属性" }, methods: { Personal:function () { console.log("methods方法存放方法") } }, template: `<div>模板的第二种使用方法2</div>`, //template:"#bot", render: (createElement) => { return createElement("h1",{"class":"类名","style":"color: red"},"这一个render属性创建的虚拟dom") }, }) </script>
methods和computed其中都可以写算法,有什么区别呢?
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="javascript/vue.min.js"></script> </head> <body> <div id="app"> <p>{{message}}</p> //直接在模板中绑定表达式 <p>{{message.split('').reverse().join('')}}</p> //运用计算属性 <p>{{reverseMessage}}</p> //运用methods方式 <p>{{methodMessage()}}</p> </div> <script> var vm=new Vue({ el:"#app", data:{ message:"hello" }, computed:{ reverseMessage:function(){ return this.message.split('').reverse().join(''); } }, methods:{ methodMessage:function () { return this.message.split('').reverse().join(''); } } }) </script> </body> </html>
我在此将三种方式进行了比较。返回的结果是一样的,但在写法上computed计算属性的方式在用属性时不用加(),而methods方式在使用时要像方法一样去用,必须加().
两种方式在缓存上也大有不同,利用computed计算属性是将 reverseMessage与message绑定,只有当message发生变化时才会触发reverseMessage,而methods方式是每次进入页面都要执行该方法,但是在利用实时信息时,比如显示当前进入页面的时间,必须用methods方式
以上就是vue常用的7个属性,当然vue的属性可不知这些,开发需要的话可以 在官网查阅剩余属性。狗尾草和大家一起加油,技术改变世界!