vue.js--模板語法

vue是一種比較流行的前端框架,目標(biāo)是通過盡可能簡單的API實現(xiàn)相應(yīng)的數(shù)據(jù)綁定和組合的視圖組件购对。輕量的框架猾昆,只聚焦于試圖層÷獍可以和其他的庫配合使用垂蜗。
看了幾集視頻看不下去了。烙如。么抗。還是菜鳥教程適合我。亚铁。。emmm

VUE的安裝

1.直接<script>引入vue.min.js(常用螟加,反正我正在用)
2.CDN方法

VUE模版語法

插值

文本:

<body>
<div id="app">
  <p>{{ message }}</p>
</div>

<script>
new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue.js!'
  }
})
</script>
</body>
image.png

Html:輸出html標(biāo)簽里的值

<body>
<div id="app">
    <div v-html="message"></div>
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    message: '<h1>菜鳥教程</h1>'
  }
})
</script>
</body>
image.png

屬性:使用v-bind指令

<style>
.class1{
  background: #444;
  color: #eee;
}
</style>
<body>
<script src="https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script>

<div id="app">
  <label for="r1">修改顏色</label><input type="checkbox" v-model="class1" id="r1">
  <br><br>
  <div v-bind:class="{'class1': class1}">
    directiva v-bind:class
  </div>
</div>
    
<script>
new Vue({
    el: '#app',
  data:{
    class1: false
  }
});
</script>
</body>
image.png

表達式:

<body>
<div id="app">
    {{5+5}}<br> 
    {{ ok ? 'YES' : 'NO' }}<br>
    {{ message.split('').reverse().join('') }}
    <div v-bind:id="'list-' + id">菜鳥教程</div>
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    ok: true, //YES
    message: 'RUNOOB', //BOONUR
    id : 1  //id="list-1"
  }
})
</script>
</body>
image.png

指令:
指令是帶有 v- 前綴的特殊屬性。
指令用于在表達式的值改變時捆探,將某些行為應(yīng)用到 DOM 上
在這個例子里然爆, v-if 指令根據(jù)表達式 seen 的值(true 或 false )來決定是否插入 p 元素

<body>
<div id="app">
    <p v-if="seen">現(xiàn)在你看到我了</p>
    <template v-if="ok">
      <h1>菜鳥教程</h1>
      <p>學(xué)的不僅是技術(shù),更是夢想黍图!</p>
      <p>哈哈哈曾雕,打字辛苦啊V弧F收拧!</p>
    </template>
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    seen: true,
    ok: true
  }
})
</script>
</body>

參數(shù):
參數(shù)在指令后以冒號指明揩环。例如搔弄, v-bind 指令被用來響應(yīng)地更新 HTML 屬性:在這里 href 是參數(shù),告知 v-bind 指令將該元素的 href 屬性與表達式 url 的值綁定丰滑。

給元素綁定href時可以也綁一個target顾犹,新窗口打開頁面。
<body>
<div id="app">
    <pre><a v-bind:href="url">菜鳥教程</a></pre>
</div>
<script>
new Vue({
  el: '#app',
  data: {
    url: 'http://www.runoob.com',
    target:'_blank'
  }
})
</script>
</body>

修飾符:
修飾符是以半角句號 . 指明的特殊后綴,用于指出一個指定應(yīng)該以特殊方式綁定炫刷。例如擎宝,.prevent 修飾符告訴 v-on 指令對于觸發(fā)的事件調(diào)用 event.preventDefault()函數(shù):

<form v-on:submit.prevent="onSubmit"></form>

用戶輸入:
在 input 輸入框中我們可以使用 v-model 指令來實現(xiàn)雙向數(shù)據(jù)綁定:

<div id="app">
    <p>{{ message }}</p>
    <input v-model="message">
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    message: 'Runoob!'
  }
})
</script>

按鈕的事件我們可以使用 v-on 監(jiān)聽事件,并對用戶的輸入進行響應(yīng)浑玛。
例:在用戶點擊按鈕后對字符串進行反轉(zhuǎn)操作:

<div id="app">
    <p>{{ message }}</p>
    <button v-on:click="reverseMessage">反轉(zhuǎn)字符串</button>
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    message: 'Runoob!'
  },
  methods: {
    reverseMessage: function () {
      this.message = this.message.split('').reverse().join('')//反轉(zhuǎn)
    }
  }
})
</script>

過濾器:
vue允許自定義過濾器认臊,被用作一些常見的文本格式話。
格式如下:

<!-- 在兩個大括號中 -->
{{ message | capitalize }}

<!-- 在 v-bind 指令中 -->
<div v-bind:id="rawId | formatId"></div>

例:對輸入的字符串第一個字母轉(zhuǎn)為大寫:

<div id="app">
  {{ message | capitalize }}
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    message: 'runoob'
  },
  filters: {
    capitalize: function (value) {
      if (!value) return ''
      value = value.toString()
      return value.charAt(0).toUpperCase() + value.slice(1)
    }
  }
})
</script>

縮寫:

v-bind縮寫
<!--完成語法-->
<a v-bind:href="url"></a>
<!--縮寫-->
<a :href="url"></a>
v-on縮寫
<!-- 完整語法 -->
<a v-on:click="doSomething"></a>
<!-- 縮寫 -->
<a @click="doSomething"></a>

VUE實例

構(gòu)造器

每個vue.js應(yīng)用都是通過構(gòu)造函數(shù)VUE創(chuàng)建一個VUE的根實例來啟動的:

var vm = new Vue({
//選項
})

屬性和方法

每個 Vue 實例都會代理其 data 對象里所有的屬性:

var data = { a: 1 }
var vm = new Vue({
  data: data
})
vm.a === data.a // -> true
// 設(shè)置屬性也會影響到原始數(shù)據(jù)
vm.a = 2
data.a // -> 2
// ... 反之亦然
data.a = 3
vm.a // -> 3

除了 data 屬性锄奢, Vue 還有一些有用的實例屬性與方法失晴。這些屬性與方法都有前綴 $,以便與代理的 data 屬性區(qū)分拘央。例如:

var data = { a: 1 }
var vm = new Vue({
  el: '#example',
  data: data
})
vm.$data === data // -> true
vm.$el === document.getElementById('example') // -> true
// $watch 是一個實例方法
vm.$watch('a', function (newVal, oldVal) {
  // 這個回調(diào)將在 `vm.a`  改變后調(diào)用
})
image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末涂屁,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子灰伟,更是在濱河造成了極大的恐慌拆又,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件栏账,死亡現(xiàn)場離奇詭異帖族,居然都是意外死亡,警方通過查閱死者的電腦和手機挡爵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進店門竖般,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人茶鹃,你說我怎么就攤上這事涣雕。” “怎么了闭翩?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵挣郭,是天一觀的道長。 經(jīng)常有香客問我疗韵,道長兑障,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任蕉汪,我火速辦了婚禮流译,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘肤无。我一直安慰自己先蒋,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布宛渐。 她就那樣靜靜地躺著竞漾,像睡著了一般眯搭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上业岁,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天鳞仙,我揣著相機與錄音,去河邊找鬼笔时。 笑死棍好,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的允耿。 我是一名探鬼主播借笙,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼较锡!你這毒婦竟也來了业稼?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蚂蕴,失蹤者是張志新(化名)和其女友劉穎低散,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體骡楼,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡熔号,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了鸟整。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片引镊。...
    茶點故事閱讀 40,127評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖吃嘿,靈堂內(nèi)的尸體忽然破棺而出祠乃,到底是詐尸還是另有隱情,我是刑警寧澤兑燥,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站琴拧,受9級特大地震影響降瞳,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蚓胸,卻給世界環(huán)境...
    茶點故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一挣饥、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧沛膳,春花似錦扔枫、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽倚舀。三九已至,卻和暖如春忍宋,著一層夾襖步出監(jiān)牢的瞬間痕貌,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工糠排, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留舵稠,地道東北人。 一個月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓入宦,卻偏偏與公主長得像哺徊,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子乾闰,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,066評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Vue.js使用了基于HTML的模版語法落追,允許開發(fā)者聲明式地將DOM綁定至底層Vue實例的數(shù)據(jù)。 Vue.js 的...
    誰說我是小小云閱讀 190評論 0 0
  • 第一組:陳輝 陽歷轉(zhuǎn)陰歷的方法 最近用到了陽歷轉(zhuǎn)陰歷的方法谣膳,當(dāng)然是js; 網(wǎng)上的是通用的js方法代碼如下,我竟然...
    胡諾閱讀 645評論 0 2
  • 乘著下班之前再來一篇铅乡,不知道為什么就是托著不讓我走?? 1.插值 插入文本 就是簡單的innerHTML的值綁定 就...
    爆炸的白菜君閱讀 325評論 0 0
  • 模板語法 文本數(shù)據(jù)綁定最常用的形式就是使用雙大括號的文本插值 Message: {{ msg }} html代碼雙...
    每木傳情閱讀 449評論 0 1
  • 建議學(xué)習(xí)時長: 60分鐘學(xué)習(xí)方式:深入 學(xué)習(xí)目標(biāo) 知道如何創(chuàng)建個 Vue 實例继谚。知道實例上的數(shù)據(jù)和函數(shù)應(yīng)該怎么寫。...
    知行社閱讀 760評論 0 1