Vue.js?模板語(yǔ)法和數(shù)據(jù)綁定
模板語(yǔ)法
Vue 模板語(yǔ)法有兩大類
插值語(yǔ)法:
- 功能:用于解析標(biāo)簽體內(nèi)容
- 寫(xiě)法:
{{xxx}},xxx是js表達(dá)式,可以讀取到 data 中屬性
指令語(yǔ)法:
- 功能:用于解析標(biāo)簽(標(biāo)簽屬性、標(biāo)簽體內(nèi)容、綁定事件...)
- 寫(xiě)法:
v-bind:href="xxx"或簡(jiǎn)寫(xiě)為:href="xxx",xxx是js表達(dá)式,可以讀取到 data 中屬性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Vue初識(shí)</title>
<script type="text/javascript" src="./js/vue.js"></script>
</head>
<body>
<div id="root">
<h1>插值語(yǔ)法</h1>
Hello {{name}}
<h1>語(yǔ)法指令</h1>
<a :href="url" rel="external nofollow" >百度</a>
</div>
<script type="text/javascript">
new Vue({
el:"#root",
data:{
name:"world",
url:"https://www.baidu.com"
}
})
</script>
</body>
</html>
數(shù)據(jù)綁定
Vue中有2種數(shù)據(jù)綁定的方式
- 單向綁定(v-bind):數(shù)據(jù)只能從 data 流向頁(yè)面
- 雙向綁定(v-model):數(shù)據(jù)不僅能從 data 流向頁(yè)面,還可以從頁(yè)面流向data
備注
- 雙向綁定一般都應(yīng)用在表單類元素上(如: input、select等)
v-model:value可以簡(jiǎn)寫(xiě)為v-model,因?yàn)?nbsp;v-model默認(rèn)收集的就是 value 值
<body>
<div id="root">
<!--普通寫(xiě)法-->
單向數(shù)據(jù)綁定:<input type="text" v-bind:value="name"><br/>
雙向數(shù)據(jù)綁定:<input type="text" v-model:value="name"><br/>
<!--簡(jiǎn)寫(xiě)-->
單向數(shù)據(jù)綁定:<input type="text" :value="name"><br/>
雙向數(shù)據(jù)綁定:<input type="text" v-model="name"><br/>
<!--如下代碼是錯(cuò)誤的,v-model只能用在表單類元素上(輸入類,有)-->
<!--<h2 v-model:x="name"></h2>-->
</div>
<script type="text/javascript">
new Vue({
el:"#root",
data:{
name:"world",
}
})
</script>
el的兩種寫(xiě)法
第一種寫(xiě)法
new Vue({
el:"#root",
data:{
name:"world",
}
})第二種寫(xiě)法
const x = new Vue({
data:{
name:"world",
}
})
console.log(x)
x.$mount('#root')其中 $mount可以在打印的 vue 實(shí)例中找到

data的兩種寫(xiě)法
第一種寫(xiě)法:對(duì)象式
new Vue({
el: "#root",
data: {
name: "world",
}
})第一種寫(xiě)法:函數(shù)式
new Vue({
el: "#root",
data: function () {
//此處的this是vue實(shí)例對(duì)象
return {
name: 'world'
}
}
})或者:
new Vue({
el: "#root",
data(){
return {
name: 'world'
}
}
})目前學(xué)習(xí)兩種寫(xiě)法都可以,但以后學(xué)到組件,必須函數(shù)式,否則會(huì)報(bào)錯(cuò)
另外:不能寫(xiě)成箭頭函數(shù),因?yàn)?this 就不是 vue 實(shí)例對(duì)象了,而是全局 window
new Vue({
el: "#root",
data: ()=> {
//此處的this是全局的window
return {
name: 'world'
}
}
})到此這篇關(guān)于Vue.js 模板語(yǔ)法和數(shù)據(jù)綁定的文章就介紹到這了,更多相關(guān)Vue 模板語(yǔ)法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue3實(shí)現(xiàn)多個(gè)表格同時(shí)滾動(dòng)并固定表頭
這篇文章主要給大家介紹了vue3中多個(gè)表格怎么同時(shí)滾動(dòng)并且固定表頭,文中通過(guò)代碼示例給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-02-02
Vue單文件組件開(kāi)發(fā)實(shí)現(xiàn)過(guò)程詳解
這篇文章主要介紹了Vue單文件組件開(kāi)發(fā)實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
vue3使用axios并封裝axios請(qǐng)求的詳細(xì)步驟
本篇文章分步驟給大家介紹了vue3使用axios并封裝axios請(qǐng)求的詳細(xì)步驟,結(jié)合實(shí)例代碼給大家講解的非常詳細(xì),需要的朋友參考下吧2023-06-06
使用Mockjs模擬接口實(shí)現(xiàn)增刪改查、分頁(yè)及多條件查詢
Mock.js是一個(gè)模擬數(shù)據(jù)生成器,可以讓前端獨(dú)立于后端進(jìn)行開(kāi)發(fā),下面這篇文章主要給大家介紹了關(guān)于使用Mockjs模擬接口實(shí)現(xiàn)增刪改查、分頁(yè)及多條件查詢的相關(guān)資料,需要的朋友可以參考下2022-04-04
vue使用echarts實(shí)現(xiàn)地圖的方法詳解
這篇文章主要為大家詳細(xì)介紹了vue使用echarts實(shí)現(xiàn)地圖的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-03-03
在Nginx上部署前端Vue項(xiàng)目的詳細(xì)步驟(超級(jí)簡(jiǎn)單!)
這篇文章主要介紹了在Nginx上部署前端Vue項(xiàng)目的詳細(xì)步驟,Nginx是一款高效的HTTP和反向代理Web服務(wù)器,作為開(kāi)源軟件,Nginx以其高性能、可擴(kuò)展性和靈活性廣泛應(yīng)用于Web架構(gòu)中,文中將步驟介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10
Vue導(dǎo)出json數(shù)據(jù)到Excel電子表格的示例
本篇主要介紹了Vue導(dǎo)出json數(shù)據(jù)到Excel電子表格的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12
mpvue中使用flyjs全局?jǐn)r截的實(shí)現(xiàn)代碼
這篇文章主要介紹了mpvue中使用flyjs全局?jǐn)r截的實(shí)現(xiàn)代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-09-09

