vue

vue 基礎(chǔ)

構(gòu)造器 :**new Vue() **
數(shù)據(jù)綁定 計(jì)算屬性:
el :,data:{}芹务,watch:{} ,methods:{}, computed:{}
vue實(shí)例屬性與方法:帶有前綴 $鹅经,以便與data屬性區(qū)分例如

$watch("a", function())
//觀察vue實(shí)例里面的a變化后調(diào)用function(){},
//注意function(){}不能是箭頭函數(shù)锅很,因?yàn)榧^函數(shù)的this被綁定

vue生命周期

created mounted updated destoryed

vue 的this指向vue實(shí)例click

vue的模板語(yǔ)法

{{a}}

v-bind: =》用來(lái)響應(yīng)式更新綁定屬性
v-bind:href="" 縮寫(xiě) ==> :href=""
v-bind:class:"{classA: tureOrFaule, classB: TureOrFaule}"

v-on: click ==> @click
v-on: $on(" ") 監(jiān)聽(tīng)事件
v-on: $emit('' ") 觸發(fā)事件

vue的過(guò)濾器窿冯?赵抢?剧蹂??
條件渲染 v-if/v-show
列表渲染 v-for

v-model 雙向數(shù)據(jù)綁定

var app5 = new Vue({
    // 綁定到 dom 通過(guò)id 烦却,在vue里的“宠叼,”(逗號(hào))el data
結(jié)束后要有逗號(hào) 最后一個(gè)不用寫(xiě)
    el: '#app',  
    //數(shù)據(jù)要放在data里
    data: {
        //在html嵌入綁定數(shù)據(jù)message要用“{{...}}”表示
        message: 'Hello Vue.js!'
    },
    //function要放在methods里
    methods: {
        reverseMessage: function () {
            this.message = this.message.split('').reverse().join('')
        }
    }
})

vue組件

Vue.component(tagName, options)

創(chuàng)建組件
語(yǔ)法糖
字符串模板

HTML 特性不區(qū)分大小寫(xiě)。當(dāng)使用非字符串模版時(shí)其爵,名字形式為 camelCase 的 prop 用作特性時(shí)冒冬,需要轉(zhuǎn)為 kebab-case(短橫線隔開(kāi)):

使用v-model 來(lái)進(jìn)行數(shù)據(jù)雙向綁定?{{}}

v-bind

Vue 實(shí)例都會(huì)代理其data對(duì)象里所有的屬性醋闭。

var data = { a: 1 }
var vm = new Vue({
data: data
})

vm.a === data.a // -> true

// 設(shè)置屬性也會(huì)影響到原始數(shù)據(jù)
vm.a = 2
data.a // -> 2

// ... 反之亦然
data.a = 3
vm.a // -> 3

Vue 實(shí)例暴露了一些有用的實(shí)例屬性與方法窄驹。這些屬性與方法都有前綴$,以便與代理的 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 是一個(gè)實(shí)例方法
vm.$watch('a', function (newVal, oldVal) {
// 這個(gè)回調(diào)將在 `vm.a` 改變后調(diào)用
})

vm.$watch('a', function (newVal, oldVal) {// 這個(gè)回調(diào)將在 vm.a 改變后調(diào)用})

vue項(xiàng)目實(shí)踐

v-bind
指令將該元素的href屬性與表達(dá)式url的值綁定<a v-bind:href="url"></a>
v-on
它用于監(jiān)聽(tīng) DOM 事件<a v-on:click="doSomething">

注冊(cè)組件

// 全局注冊(cè)
Vue.component('my-component', {
template: '<div>A custom component!</div>'
})

// 創(chuàng)建根實(shí)例
new Vue({
el: '#example'
})
var Child = {
template: '<div>A custom component!</div>'
}

new Vue({
// ...
components: {
// <my-component> 將只在父模板可用
'my-component': Child
}
})

date必須是函數(shù)(使用組件時(shí))

使用$on(eventName)
監(jiān)聽(tīng)事件
使用$emit(eventName)
觸發(fā)事件

<div id="example-2">
<simple-counter></simple-counter>
<simple-counter></simple-counter>
<simple-counter></simple-counter>
</div>
var data = { counter: 0 }

Vue.component('simple-counter', {
template: '<button v-on:click="counter += 1">{{ counter }}</button>',
// data 是一個(gè)函數(shù)证逻,因此 Vue 不會(huì)警告乐埠,
// 但是我們?yōu)槊恳粋€(gè)組件返回了同一個(gè)對(duì)象引用
data: function () {
return data
}
})

new Vue({
el: '#example-2'
})

vue-router

<div id="app">
  <h1>Hello App!</h1>
  <p>
    <!-- 使用 router-link 組件來(lái)導(dǎo)航. -->
    <!-- 通過(guò)傳入 `to` 屬性指定鏈接. -->
    <!-- <router-link> 默認(rèn)會(huì)被渲染成一個(gè) `<a>` 標(biāo)簽 -->
    <router-link to="/foo">Go to Foo</router-link>
    <router-link to="/bar">Go to Bar</router-link>
  </p>
  <!-- 路由出口 -->
  <!-- 路由匹配到的組件將渲染在這里 -->
  <router-view></router-view>
</div>

如果使用模塊化機(jī)制編程, 要調(diào)用 Vue.use(VueRouter)

// 0. 如果使用模塊化機(jī)制編程囚企, 要調(diào)用 Vue.use(VueRouter)

// 1. 定義(路由)組件丈咐。
// 可以從其他文件 import 進(jìn)來(lái)
const Foo = { template: '<div>foo</div>' }
const Bar = { template: '<div>bar</div>' }

// 2. 定義路由
// 每個(gè)路由應(yīng)該映射一個(gè)組件。 其中"component" 可以是
// 通過(guò) Vue.extend() 創(chuàng)建的組件構(gòu)造器龙宏,
// 或者棵逊,只是一個(gè)組件配置對(duì)象。
// 我們晚點(diǎn)再討論嵌套路由银酗。
const routes = [
  { path: '/foo', component: Foo },
  { path: '/bar', component: Bar }
]

// 3. 創(chuàng)建 router 實(shí)例辆影,然后傳 `routes` 配置
// 你還可以傳別的配置參數(shù), 不過(guò)先這么簡(jiǎn)單著吧徒像。
const router = new VueRouter({
  routes // (縮寫(xiě))相當(dāng)于 routes: routes
})

// 4. 創(chuàng)建和掛載根實(shí)例。
// 記得要通過(guò) router 配置參數(shù)注入路由蛙讥,
// 從而讓整個(gè)應(yīng)用都有路由功能
const app = new Vue({
  router
}).$mount('#app')

// 現(xiàn)在锯蛀,應(yīng)用已經(jīng)啟動(dòng)了!

vuex

//install 
npm install vuex
// loading vuex and use
import vuex from 'vuex'
import vue from 'vue'

vue.use(vuex)

在 Vue.js 中次慢,父子組件的關(guān)系可以總結(jié)為 props down, events up 旁涤。父組件通過(guò) props 向下傳遞數(shù)據(jù)給子組件,子組件通過(guò) events 給父組件發(fā)送消息迫像∨蓿看看它們是怎么工作的。

注意組件名稱(chēng) 如何引用
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末闻妓,一起剝皮案震驚了整個(gè)濱河市菌羽,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌由缆,老刑警劉巖算凿,帶你破解...
    沈念sama閱讀 217,826評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異犁功,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)婚夫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)浸卦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人案糙,你說(shuō)我怎么就攤上這事限嫌。” “怎么了时捌?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,234評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵怒医,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我奢讨,道長(zhǎng)稚叹,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,562評(píng)論 1 293
  • 正文 為了忘掉前任拿诸,我火速辦了婚禮扒袖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘亩码。我一直安慰自己季率,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布描沟。 她就那樣靜靜地躺著飒泻,像睡著了一般鞭光。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上泞遗,一...
    開(kāi)封第一講書(shū)人閱讀 51,482評(píng)論 1 302
  • 那天惰许,我揣著相機(jī)與錄音,去河邊找鬼刹孔。 笑死啡省,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的髓霞。 我是一名探鬼主播卦睹,決...
    沈念sama閱讀 40,271評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼方库!你這毒婦竟也來(lái)了结序?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,166評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤纵潦,失蹤者是張志新(化名)和其女友劉穎徐鹤,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體邀层,經(jīng)...
    沈念sama閱讀 45,608評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡返敬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了寥院。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片劲赠。...
    茶點(diǎn)故事閱讀 39,926評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖秸谢,靈堂內(nèi)的尸體忽然破棺而出凛澎,到底是詐尸還是另有隱情,我是刑警寧澤估蹄,帶...
    沈念sama閱讀 35,644評(píng)論 5 346
  • 正文 年R本政府宣布塑煎,位于F島的核電站,受9級(jí)特大地震影響臭蚁,放射性物質(zhì)發(fā)生泄漏最铁。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評(píng)論 3 329
  • 文/蒙蒙 一刊棕、第九天 我趴在偏房一處隱蔽的房頂上張望炭晒。 院中可真熱鬧,春花似錦甥角、人聲如沸网严。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,866評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)震束。三九已至怜庸,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間垢村,已是汗流浹背割疾。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,991評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留嘉栓,地道東北人宏榕。 一個(gè)月前我還...
    沈念sama閱讀 48,063評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像侵佃,于是被迫代替她去往敵國(guó)和親麻昼。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評(píng)論 2 354

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

  • 這篇筆記主要包含 Vue 2 不同于 Vue 1 或者特有的內(nèi)容馋辈,還有我對(duì)于 Vue 1.0 印象不深的內(nèi)容抚芦。關(guān)于...
    云之外閱讀 5,050評(píng)論 0 29
  • 1.安裝 可以簡(jiǎn)單地在頁(yè)面引入Vue.js作為獨(dú)立版本,Vue即被注冊(cè)為全局變量迈螟,可以在頁(yè)面使用了叉抡。 如果希望搭建...
    Awey閱讀 11,023評(píng)論 4 129
  • Vue 實(shí)例 屬性和方法 每個(gè) Vue 實(shí)例都會(huì)代理其 data 對(duì)象里所有的屬性:var data = { a:...
    云之外閱讀 2,209評(píng)論 0 6
  • vue.js是什么 是一套構(gòu)建用戶界面的漸進(jìn)式框架 vue應(yīng)用組成 一個(gè) Vue 應(yīng)用由一個(gè)通過(guò)new Vue創(chuàng)建...
    多多醬_DuoDuo_閱讀 1,027評(píng)論 0 2
  • 本文是小羊根據(jù)Vue.js文檔進(jìn)行解讀的第一篇文章,主要內(nèi)容涵蓋Vue.js的基礎(chǔ)部分的知識(shí)的答毫,文章順序基本按照官...
    犯迷糊的小羊閱讀 7,644評(píng)論 11 135