“Vue 模板语法”的版本间的差异
		
		
		
		
		
		跳到导航
		跳到搜索
		
				
		
		
	
Jihongchang(讨论 | 贡献)  (建立内容为“https://www.bilibili.com/video/BV1Zy4y1K7SH?p=7”的新页面)  | 
				Jihongchang(讨论 | 贡献)   | 
				||
| (未显示同一用户的5个中间版本) | |||
| 第1行: | 第1行: | ||
https://www.bilibili.com/video/BV1Zy4y1K7SH?p=7  | https://www.bilibili.com/video/BV1Zy4y1K7SH?p=7  | ||
| + | |||
| + | === 模板语法主要分两种 ===  | ||
| + | 1.插值语法(双大括号表达式)  | ||
| + | |||
| + | * 功能:用于解析标签体内容。  | ||
| + | |||
| + | * 写法:<nowiki>{{xxx}}</nowiki>,xxx 是 js表达式,且可以直接读取到 data 中的所有属性。  | ||
| + | |||
| + | 2.指令语法(以 v- 开头)  | ||
| + | |||
| + | * 功能:用于解析标签(包括:标签属性、标签体内容、绑定事件......)  | ||
| + | |||
| + | * 举例:v-bind:href="xxx" 或简写为 :href="xxx",xxx 同样要写 js 表达式,且可以直接读取到 data 中的所有属性。  | ||
| + | |||
| + | * 备注:Vue 中有很多的指令,且形式都是:v-????,此处我们只是拿 v-bind 举个例子。<syntaxhighlight lang="html">  | ||
| + | <!DOCTYPE html>  | ||
| + | <html lang="en">  | ||
| + | <head>  | ||
| + |     <meta charset="UTF-8">  | ||
| + |     <meta name="viewport" content="width=device-width, initial-scale=1.0">  | ||
| + |     <title>模板语法</title>  | ||
| + |     <!--引入 Vue-->  | ||
| + |     <script src="../js/vue.js"></script>  | ||
| + | </head>  | ||
| + | <body>  | ||
| + |     <!--准备好一个容器-->  | ||
| + |     <div id="root">  | ||
| + |         <h1>插值语法</h1>  | ||
| + |         <h3>你好,{{name}}</h3>  | ||
| + |         <hr/>  | ||
| + |         <h1>指令语法</h1>  | ||
| + |         <a v-bind:href="url" v-bind:x="name">点我去必应1</a>  | ||
| + |         <a :href="url.toUpperCase()" :x="name">点我去必应2</a>  | ||
| + |     </div>  | ||
| + |     <script>  | ||
| + |         new Vue({  | ||
| + |             el:'#root',  | ||
| + |             data:{  | ||
| + |                 name:'jack',  | ||
| + |                 url:'http://www.bing.com/'  | ||
| + |             }  | ||
| + |         })  | ||
| + |     </script>  | ||
| + | </body>  | ||
| + | </html>  | ||
| + | </syntaxhighlight>插值表达式用在开始标签和结束标签之间的标签体中  | ||
| + | |||
| + | 指令语法用来管理标签属性  | ||
| + | |||
| + | v-bind 可以用 :(冒号)简写  | ||
| + | |||
| + | === data 多级结构 ===  | ||
| + | <syntaxhighlight lang="html">  | ||
| + | <!DOCTYPE html>  | ||
| + | <html lang="en">  | ||
| + | <head>  | ||
| + |     <meta charset="UTF-8">  | ||
| + |     <meta name="viewport" content="width=device-width, initial-scale=1.0">  | ||
| + |     <title>模板语法</title>  | ||
| + |     <!--引入 Vue-->  | ||
| + |     <script src="../js/vue.js"></script>  | ||
| + | </head>  | ||
| + | <body>  | ||
| + |     <!--准备好一个容器-->  | ||
| + |     <div id="root">  | ||
| + |         <h1>插值语法</h1>  | ||
| + |         <h3>你好,{{name}}</h3>  | ||
| + |         <hr/>  | ||
| + |         <h1>指令语法</h1>  | ||
| + |         <a v-bind:href="hrefArg.url" v-bind:x="hrefArg.name">点我去{{hrefArg.name}}</a>  | ||
| + |         <!-- <a :href="url.toUpperCase()" :x="name">点我去必应2</a> -->  | ||
| + |     </div>  | ||
| + |     <script>  | ||
| + |         new Vue({  | ||
| + |             el:'#root',  | ||
| + |             data:{  | ||
| + |                 name:'jack',  | ||
| + |                 hrefArg:{  | ||
| + |                     name:'必应',  | ||
| + |                     url:'http://www.bing.com/'  | ||
| + |                 }  | ||
| + |             }  | ||
| + |         })  | ||
| + |     </script>  | ||
| + | </body>  | ||
| + | </html>  | ||
| + | </syntaxhighlight>  | ||
2024年7月28日 (日) 04:12的最新版本
https://www.bilibili.com/video/BV1Zy4y1K7SH?p=7
模板语法主要分两种
1.插值语法(双大括号表达式)
- 功能:用于解析标签体内容。
 
- 写法:{{xxx}},xxx 是 js表达式,且可以直接读取到 data 中的所有属性。
 
2.指令语法(以 v- 开头)
- 功能:用于解析标签(包括:标签属性、标签体内容、绑定事件......)
 
- 举例:v-bind:href="xxx" 或简写为 :href="xxx",xxx 同样要写 js 表达式,且可以直接读取到 data 中的所有属性。
 
- 备注:Vue 中有很多的指令,且形式都是:v-????,此处我们只是拿 v-bind 举个例子。插值表达式用在开始标签和结束标签之间的标签体中
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>模板语法</title> <!--引入 Vue--> <script src="../js/vue.js"></script> </head> <body> <!--准备好一个容器--> <div id="root"> <h1>插值语法</h1> <h3>你好,{{name}}</h3> <hr/> <h1>指令语法</h1> <a v-bind:href="url" v-bind:x="name">点我去必应1</a> <a :href="url.toUpperCase()" :x="name">点我去必应2</a> </div> <script> new Vue({ el:'#root', data:{ name:'jack', url:'http://www.bing.com/' } }) </script> </body> </html>
 
指令语法用来管理标签属性
v-bind 可以用 :(冒号)简写
data 多级结构
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>模板语法</title>
    <!--引入 Vue-->
    <script src="../js/vue.js"></script>
</head>
<body>
    <!--准备好一个容器-->
    <div id="root">
        <h1>插值语法</h1>
        <h3>你好,{{name}}</h3>
        <hr/>
        <h1>指令语法</h1>
        <a v-bind:href="hrefArg.url" v-bind:x="hrefArg.name">点我去{{hrefArg.name}}</a>
        <!-- <a :href="url.toUpperCase()" :x="name">点我去必应2</a> -->
    </div>
    <script>
        new Vue({
            el:'#root',
            data:{
                name:'jack',
                hrefArg:{
                    name:'必应',
                    url:'http://www.bing.com/'
                }
            }
        })
    </script>
</body>
</html>