(二)Vue常用7个属性

学习 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 中数据的变化
    • 两个参数,一个返回新值,一个返回旧值,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<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 其中都可以写算法,有什么区别呢?
    
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!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 的属性可不知这些,开发需要的话可以 在官网查阅剩余属性。狗尾草和大家一起加油,技术改变世界!