欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Vue中的基本語法和常用指令

 更新時間:2019年07月23日 16:32:03   作者:吳佼奮  
Vue.js 是一套構建用戶界面的框架,**只關注視圖層**,它不僅易于上手,還便于與第三方庫或既有項目整合。這篇文章主要介紹了vue 的基本語法和常用指令,需要的朋友可以參考下

什么是vue.js

Vue.js是目前最火的一個前端框架,React是最流行的一個前端框架(React除了開發(fā)網(wǎng)站,還可以開發(fā)手機App, Vue語法也是可以用于進行手機App開發(fā)的,需要借助于Weex)

Vue.js 是前端的**主流框架之一**,和Angular.js、React.js 一起,并成為前端三大主流框架!

Vue.js 是一套構建用戶界面的框架,**只關注視圖層**,它不僅易于上手,還便于與第三方庫或既有項目整合。(Vue有配套的第三方類庫,可以整合起來做大型項目的開發(fā))

Vue.js模本語法

1、插值表達式

數(shù)據(jù)綁定最常見的形式就是使用 {{...}}(雙大括號)的文本插值

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

  <script>
   new Vue({
    el: '#app',
    data: {
     message: '<h1>vue的初次學習</h1>'
    }
   })
  </script>

v-html 指令 :用于輸出 html 代碼:

<div id="app">
   <div v-html="message"></div>
  </div>
  <script>
   new Vue({
    el: '#app',
    data: {
     message: '<h1>vue的初次學習</h1>'
    }
   })
  </script>

v-text 指令 :是用于輸出文本       

<div id="app">
   <div v-text="message"></div>
  </div>
  <script>
   new Vue({
    el: '#app',
    data: {
     message: '<h1>vue的初次學習</h1>'
    }
   })
  </script>

2、Vue.js的條件判斷

v-if條件判斷指令

<div id="app">
   <p v-if="seen">現(xiàn)在你看到我了</p>
   <template v-if="ok">
    <h1>菜鳥教程</h1>
    <p>學的不僅是技術,更是夢想!</p>
    <p>哈哈哈,打字辛苦?。。?!</p>
   </template>
  </div>

  <script>
   new Vue({
    el: '#app',
    data: {
     seen: true,
     ok: true
    }
   })
  </script>

如果 seen 為true 這顯示 p 標簽。否則隱藏

注意:

1、    v-show 其用法和 v-if 相同也可以設置元素的顯示或隱藏。但是不具備條件判斷功能
2、    v-else、v-else-if 可以給v-if 設置一個 else 模塊、else-if模塊
3、    v-else 、v-else-if 必須要跟在 v-if 或v-else-if 模塊后面

3、Vue.js循環(huán)語法

v-for 指令需要以  site in sites 形式的特殊語法, sites 是源數(shù)據(jù)數(shù)組并且 site 是數(shù)組元素迭代的別名

1.迭代數(shù)組

<div id="app">
   <ol>
    <li v-for="site in sites">
     {{ site.name }}
    </li>
   </ol>
  </div>
  <script>
   new Vue({
    el: '#app',
    data: {
     sites: [
      {name: 'Runoob'},
      {name: 'Google'},
      {name: 'Taobao'}
      ]
    }
   })
  </script>

2.迭代對象中的屬性

<div v-for="(val, key, i) in userInfo">
{{val}} --- {{key}} --- {{i}}
</div>

其中:【userinfo】是一個對象

3.迭代數(shù)字

<p v-for="i in 10">這是第 {{i}} 個P標簽</p>

4、Vue.js 常用指令

v-cloak : 能夠解決插值表達式閃爍的問題

v-bind :是vue提供的用于綁定屬性的指令。可以簡寫為  : 要綁定的指令 。

<input type="button" value="按鈕" v-bind:title="mytitle + '123'">
<script>
   var vm = new Vue({
    el: '#app',
    data: {
     mytitle: '這是一個自己定義的title'
    },
    methods: {
     show: function() {
      alert('Hello')
     }
    }
   })
  </script>

v-model :v-bind 只能實現(xiàn)數(shù)據(jù)的單向綁定。從M 自動綁定到V , 無法實現(xiàn)數(shù)據(jù)的雙向綁定。 而 v-model 指令則可以實現(xiàn)表單元素和 M中數(shù)據(jù)的雙向綁定。

注意: v-model指令只能運用在表單元素中 。

<div id="app">
   <h4>{{ msg }}</h4>
   <!-- input(radio, text, address, email....) select checkbox textarea -->
   <input type="text" style="width:100%;" v-model="msg">
  </div>

  <script>
   // 創(chuàng)建 Vue 實例,得到 ViewModel
   var vm = new Vue({
    el: '#app',
    data: {
     msg: '大家都是好學生,愛敲代碼,愛學習,愛思考,簡直是完美,沒瑕疵!'
    },
    methods: {}
   });
  </script>

補充說明:前端MVVM 與后端的MVC的區(qū)別。

MVC:是后端分層開發(fā)的概念。

MVVM是前端視圖層的概念。主要關注于視圖層分離,也就是說:MVVM吧前端的視圖層分為了三部分。Model ,View ,VM ViewModel

5、Vue.js 事件處理器

v-on :事件監(jiān)聽可以使用 v-on 指令

<div id="app">
   <!-- `greet` 是在下面定義的方法名 -->
   <button v-on:click="greet">Greet</button>
  </div>

  <script>
   var app = new Vue({
    el: '#app',
    data: {
     name: 'Vue.js'
    },
    // 在 `methods` 對象中定義方法
    methods: {
     greet: function(event) {
      // `this` 在方法里指當前 Vue 實例
      alert('Hello ' + this.name + '!')
      // `event` 是原生 DOM 事件
      if(event) {
       alert(event.target.tagName)
      }
     }
    }
   })
  </script>

6、事件修飾符

.stop       阻止冒泡

.prevent    阻止默認事件

.capture    添加事件偵聽器時使用事件捕獲模式

.self       只當事件在該元素本身(比如不是子元素)觸發(fā)時觸發(fā)回調

.once      事件只觸發(fā)一次

<div id="app">
   <!-- 使用 .stop 阻止冒泡 -->
   <div class="inner" @click="div1Handler">
    <input type="button" value="戳他" @click.stop="btnHandler">
   </div>
   <!-- 使用 .prevent 阻止默認行為 -->
   <!-- <a  @click.prevent="linkClick">有問題,先去百度</a> -->
   <!-- 使用 .capture 實現(xiàn)捕獲觸發(fā)事件的機制 -->
   <div class="inner" @click.capture="div1Handler">
    <input type="button" value="戳他" @click="btnHandler">
   </div> -->
   <!-- 使用 .self 實現(xiàn)只有點擊當前元素時候,才會觸發(fā)事件處理函數(shù) -->
   <div class="inner" @click="div1Handler">
    <input type="button" value="戳他" @click="btnHandler">
   </div>
   <!-- 使用 .once 只觸發(fā)一次事件處理函數(shù) -->
   <!-- <a  @click.prevent.once="linkClick">有問題,先去百度</a> -->
   <!-- 演示: .stop 和 .self 的區(qū)別 -->
   <div class="outer" @click="div2Handler">
    <div class="inner" @click="div1Handler">
     <input type="button" value="戳他" @click.stop="btnHandler">
    </div>
   </div>
   <!-- .self 只會阻止自己身上冒泡行為的觸發(fā),并不會真正阻止 冒泡的行為 -->
   <div class="outer" @click="div2Handler">
    <div class="inner" @click.self="div1Handler">
     <input type="button" value="戳他" @click="btnHandler">
    </div>
   </div>
  </div>
  <script>
   // 創(chuàng)建 Vue 實例,得到 ViewModel
   var vm = new Vue({
    el: '#app',
    data: {},
    methods: {
     div1Handler() {
      console.log('這是觸發(fā)了 inner div 的點擊事件')
     },
     btnHandler() {
      console.log('這是觸發(fā)了 btn 按鈕 的點擊事件')
     },
     linkClick() {
      console.log('觸發(fā)了連接的點擊事件')
     },
     div2Handler() {
      console.log('這是觸發(fā)了 outer div 的點擊事件')
     }
    }
   });
  </script>

7、按鍵修飾符

v-on:keyup : 允許為 v-on 在監(jiān)聽鍵盤事件時添加按鍵修飾符

<input v-on:keyup.enter="submit">

綁定一個回車按鍵時間

8、Vue.js 樣式的綁定

1、Class屬性的綁定(v-bind:class)

<style>
   .active {
    width: 100px;
    height: 100px;
    background: green;
   }
  </style>
<div id="app">
   <div v-bind:class="{ active: isActive }"></div>
  </div>
<script>
   new Vue({
    el: '#app',
    data: {
     isActive: true
    }
   })
  </script>

也可以:

<div id="app">
   <div v-bind:class="active"></div>
  </div>

2、數(shù)組語法

即我們可以向v-bind:class 傳遞一個數(shù)組

<style>
   .active {
    width: 100px;
    height: 100px;
    background: green;
   }
   
   .text-danger {
    background: red;
   }
  </style>
  <div id="app">
   <div v-bind:class="[activeClass, errorClass]"></div>
  </div>

  <script>
   new Vue({
    el: '#app',
    data: {
isActive: true,
     activeClass: 'active',
     errorClass: 'text-danger'
    }
   }) 
  </script>

同時在數(shù)組中我們也可以使用三元表達式:

<div v-bind:class="[errorClass ,isActive ? activeClass : '']"></div>

3、Vue.js 的內聯(lián)樣式(v-bind:style)

1、直接設置樣式

<div id="app">
    <div v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }">測試內聯(lián)樣式</div>
   </div>

2、綁定樣式對象

<div id="app">
   <div v-bind:style="styleObject">測試綁定樣式對象</div>
  </div>

  <script>
   new Vue({
    el: '#app',
    data: {
     styleObject: {
      color: 'green',
      fontSize: '30px'
     }
    }
   })
  </script>

3、綁定多個樣式對象 

<div id="app">
   <div v-bind:style="[baseStyles, overridingStyles]">綁定多個樣式對象</div>
  </div>

  <script>
   new Vue({
    el: '#app',
    data: {
     baseStyles: {
      color: 'green',
      fontSize: '30px'
     },
     overridingStyles: {
      'font-weight': 'bold'
     }
    }
   })
  </script>

總結

以上所述是小編給大家介紹的vue 的基本語法和常用指令,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

相關文章

  • vue中項目如何提交form格式數(shù)據(jù)的表單

    vue中項目如何提交form格式數(shù)據(jù)的表單

    這篇文章主要介紹了vue中項目如何提交form格式數(shù)據(jù)的表單,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Vue.js基礎學習之class與樣式綁定

    Vue.js基礎學習之class與樣式綁定

    這篇文章主要為大家介紹了Vue.js的Class與樣式綁定,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 解決vue無法加載文件D:\Program Files\nodejs\node_global\vue.ps1,因為在此系統(tǒng)上禁止運行腳本

    解決vue無法加載文件D:\Program Files\nodejs\node_global\vue.ps1,

    這篇文章主要給大家介紹了關于解決vue無法加載文件D:\Program Files\nodejs\node_global\vue.ps1,因為在此系統(tǒng)上禁止運行腳本的相關資料,這個報錯是由于在系統(tǒng)上禁止運行腳本導致的,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • vue3不同環(huán)境下實現(xiàn)配置代理

    vue3不同環(huán)境下實現(xiàn)配置代理

    這篇文章主要介紹了vue3不同環(huán)境下實現(xiàn)配置代理,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • vue better-scroll插件使用詳解

    vue better-scroll插件使用詳解

    本篇文章主要介紹了vue better-scroll插件使用詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • 詳解vue2.0 使用動態(tài)組件實現(xiàn) Tab 標簽頁切換效果(vue-cli)

    詳解vue2.0 使用動態(tài)組件實現(xiàn) Tab 標簽頁切換效果(vue-cli)

    本篇文章主要介紹了詳解vue2.0 使用動態(tài)組件實現(xiàn) Tab 標簽頁切換效果(vue-cli),具有一定的參考價值,有需要的可以了解下
    2017-08-08
  • Vue+Element-U實現(xiàn)分頁顯示效果

    Vue+Element-U實現(xiàn)分頁顯示效果

    這篇文章主要為大家詳細介紹了Vue+Element-U實現(xiàn)分頁顯示效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • Vue中router-view和component :is的區(qū)別解析

    Vue中router-view和component :is的區(qū)別解析

    這篇文章主要介紹了Vue中router-view和component :is的區(qū)別解析,router-view用法直接填寫跳轉路由,路由組件會渲染<router-view></router-view>標簽,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-10-10
  • vue路由攔截及頁面跳轉的設置方法

    vue路由攔截及頁面跳轉的設置方法

    這篇文章主要介紹了vue路由攔截及頁面跳轉的設置方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-05-05
  • vue 微信授權登錄解決方案

    vue 微信授權登錄解決方案

    這篇文章主要介紹了vue 微信授權解決方案,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04

最新評論