一、插值语法

  • 功能:用于解析标签体内容。
  • 写法:{{xxx}},xxx是js表达式,且可以读取到data中的所有属性。

二、指令语法

  • 功能:用于解析标签(包括:标签属性、标签体内容、绑定事件......)。
  • 举例:v-bind:href="xxx" 或简写为 :href="xxx",xxx同样要写为js表达式,且可以读取到data中的所有属性。
  • 备注:Vue有很多指令,且形式均为:v-xxx,如:v-bind。
<head>
<title>模板语法</title>
<script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
    <!-- 准备好一个容器 -->
    <div id="root">
        <h1>插值语法</h1>
        <h1>Hello,{{name}}</h1>
        </hr>
        <h1>指令语法</h1>
        <h1 v-bind:href="url" x="hello">点我去学习</h1>
        <h1 :href="url" x="hello">点我去学习2</h1>
    </div>
</body>

<script type="text/javascript">
    Vue.config.productionTip=false //阻止vue启动时,生成生产提示
    
    //创建Vue实例
    new Vue( {
        el:'#root', //el用于指定当前Vue实例为哪个容器服务,值通常为CSS选择器字符串
        data:{  //data 用于存储数据,数据供 el 所指定的容器去使用,值我们暂时先写成一个对象
            name:'尚硅谷',
            url:'https://vuejs.org/',
        }
     } )
</script>

三、数据绑定

  • 单向绑定(v-bind):数据只能从data流向页面。
  • 双向绑定(v-model):数据不仅能从data流向页面,还可以从页面流向data。
    1. 只能应用在表单类元素(输入类元素,如input,select等)上。
    2. v-model:value 可以简写为 v-model,因为v-model默认收集value值。
<!-- 准备好一个容器 -->
    <div id="root">
        <h1>普通写法</h1>
        单向数据绑定:<input type="text" v-bind:value="name"></br>
        双向数据绑定:<input type="text" v-model:value="name"></br>
        
        <h1>简单写法</h1>
        单向数据绑定:<input type="text" :value="name"></br>
        双向数据绑定:<input type="text" v-model="name"></br>
    </div>