vue介紹

一揽思,Vue是什么

是一套構(gòu)建用戶界面的漸進式框架。Vue 采用自底向上增量開發(fā)的設(shè)計质和。Vue 的核心庫只關(guān)注視圖層寓辱,它不僅易于上手,還便于與第三方庫或既有項目整合太示。另一方面镀钓,當(dāng)與單文件組件Vue 生態(tài)系統(tǒng)支持的庫結(jié)合使用時病毡,Vue 也完全能夠為復(fù)雜的單頁應(yīng)用程序提供驅(qū)動啦扬。

二中狂,特點

Vue.js 的核心是一個允許采用簡潔的模板語法來聲明式的將數(shù)據(jù)渲染進 DOM:

<div id="app">
  {{ message }}
<div class="v-if"  v-if="show"> </div>
<div class="v-show"  v-show="show"> </div>
</div>

var app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

現(xiàn)在數(shù)據(jù)和 DOM 已經(jīng)被綁定在一起,所有的元素都是響應(yīng)式的

三扑毡,指令

條件與循環(huán)
v-if , v-show 條件胃榕,區(qū)別,v-if是顯示和刪除dom瞄摊,v-show只是display:none;

v-for 遍歷循環(huán)
<div id="app-4">
  <ol>
    <li v-for="todo in todos">
      {{ todo.text }}
    </li>
  </ol>
</div>
var app4 = new Vue({
  el: '#app-4',
  data: {
    todos: [
      { text: '學(xué)習(xí) JavaScript' },
      { text: '學(xué)習(xí) Vue' },
      { text: '整個牛項目' }
    ]
  }
})
綁定事件

v-on:

<div id="app-5">
  <p>{{ message }}</p>
  <button v-on:click="reverseMessage">逆轉(zhuǎn)消息</button>
</div>
var app5 = new Vue({
  el: '#app-5',
  data: {
    message: 'Hello Vue.js!'
  },
  methods: {
    reverseMessage: function () {
      this.message = this.message.split('').reverse().join('')
    }
  }
})
v-bind 指令用于響應(yīng)地更新 HTML 特性 形式如:v-bind:href 縮寫為 :href;
v-on 指令用于監(jiān)聽DOM事件 形式如:v-on:click 縮寫為 @click;
v-html=""

html: "通過<b>v-html</b>方式綁定,html標(biāo)簽在渲染的時候被解析了勋又。",

v-text=""
       text: "通過<b>v-text</b>方式綁定,html標(biāo)簽在渲染的時候被源碼輸出了。

data()
methods
components
created vue的生命周期 用來觸發(fā)事件
method用來定義方法的,比如你@click="test",methods就定義test這個方法

路由

v-router
axios

vuex

把同步操作放在mutations
異步操作放在actions

import axios from 'axios'
export default {
  name: 'projects',
  data: function () {
    return {
      projects: []
    }
  },
  methods: {
    loadProjects: function () {
      axios.get('/secured/projects').then((response) => {
        this.projects = response.data
      }, (err) => {
        console.log(err)
      })
    }
  },
  mounted: function () {
    this.loadProjects()
  }
}

根據(jù) Vuex** 文檔中的描述换帜,Vuex 是適用于 Vue.js 應(yīng)用的狀態(tài)管理庫楔壤,為應(yīng)用中的所有組件提供集中式的狀態(tài)存儲與操作,保證了所有狀態(tài)以可預(yù)測的方式進行修改惯驼。
Vuex 中 Store 的模板化定義如下:

import Vue from 'vue'import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
 state: { },
 actions: { },
 mutations: { },
 getters: { }, 
modules: { }
})
export default store

上述代碼中包含了定義 Vuex Store 時關(guān)鍵的 5 個屬性:

state: state 定義了應(yīng)用狀態(tài)的數(shù)據(jù)結(jié)構(gòu)蹲嚣,同樣可以在這里設(shè)置默認(rèn)的初始狀態(tài)。

state: { projects: [], userProfile: {}}

actions:Actions 即是定義提交觸發(fā)更改信息的描述祟牲,常見的例子有從服務(wù)端獲取數(shù)據(jù)隙畜,在數(shù)據(jù)獲取完成后會調(diào)用store.commit()來調(diào)用更改 Store 中的狀態(tài)∑>欤可以在組件中使用dispatch來發(fā)出 Actions禾蚕。

actions: { LOAD_PROJECT_LIST: function ({ commit }) { 

axios.get('/secured/projects').then((response) => { commit
('SET_PROJECT_LIST', { list: response.data }) }, (err) => { console.log(err) }) } }

mutations: 調(diào)用 mutations 是唯一允許更新應(yīng)用狀態(tài)的地方。

mutations: { SET_PROJECT_LIST: (state, { list }) => { state.projects = list } }

getters: Getters 允許組件從 Store 中獲取數(shù)據(jù)狂丝,譬如我們可以從 Store 中的 projectList 中篩選出已完成的項目列表:

getters:
{ completedProjects: state => 
{ return state.projects.filter(project => project.completed).length }}

</script>

腳手架
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末换淆,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子几颜,更是在濱河造成了極大的恐慌倍试,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蛋哭,死亡現(xiàn)場離奇詭異县习,居然都是意外死亡,警方通過查閱死者的電腦和手機谆趾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門躁愿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人沪蓬,你說我怎么就攤上這事彤钟。” “怎么了跷叉?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵逸雹,是天一觀的道長营搅。 經(jīng)常有香客問我,道長梆砸,這世上最難降的妖魔是什么转质? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮帖世,結(jié)果婚禮上休蟹,老公的妹妹穿的比我還像新娘。我一直安慰自己狮暑,他們只是感情好鸡挠,可當(dāng)我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著搬男,像睡著了一般拣展。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上缔逛,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天备埃,我揣著相機與錄音,去河邊找鬼褐奴。 笑死按脚,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的敦冬。 我是一名探鬼主播辅搬,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼脖旱!你這毒婦竟也來了堪遂?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤萌庆,失蹤者是張志新(化名)和其女友劉穎溶褪,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體践险,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡猿妈,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了巍虫。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片彭则。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖占遥,靈堂內(nèi)的尸體忽然破棺而出贰剥,到底是詐尸還是另有隱情,我是刑警寧澤筷频,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布蚌成,位于F島的核電站,受9級特大地震影響凛捏,放射性物質(zhì)發(fā)生泄漏担忧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一坯癣、第九天 我趴在偏房一處隱蔽的房頂上張望瓶盛。 院中可真熱鬧,春花似錦示罗、人聲如沸惩猫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽轧房。三九已至,卻和暖如春绍绘,著一層夾襖步出監(jiān)牢的瞬間奶镶,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工陪拘, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留厂镇,地道東北人。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓左刽,卻偏偏與公主長得像捺信,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子欠痴,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,614評論 2 353

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