Vue.js 2.0 由淺入深
## 一、 傳送AJAX請求
### 1. 簡介
vue本身不支援傳送AJAX請求,需要使用vue-resource、axios等外掛實現
axios是一個基於Promise的HTTP請求客戶端,用來傳送請求,也是vue2.0官方推薦的,同時不再對vue-resource進行更新和維護
參考:GitHub上搜尋axios,檢視API文件
### 2. 使用axios傳送AJAX請求
#### 2.1 安裝axios並引入
npm install axios -S
也可直接下載axios.min.js檔案
#### 2.2 基本用法
axios([options])
axios.get(url[,options]);
傳參方式:
1.透過url傳參
2.透過params選項傳參
axios.post(url,data,[options]);
axios預設傳送資料時,資料格式是Request Payload,並非我們常用的Form Data格式,
所以引數必須要以鍵值對形式傳遞,不能以json形式傳參
傳參方式:
1.自己拼接為鍵值對
2.使用transformRequest,在請求傳送前將請求資料進行轉換
3.如果使用模組化開發,可以使用qs模組進行轉換
axios本身並不支援傳送跨域的請求,沒有提供相應的API,作者也暫沒計劃在axios新增支援傳送跨域請求,所以只能使用第三方庫
### 3. 使用vue-resource傳送跨域請求
#### 3.1 安裝vue-resource並引入
cnpm install vue-resource -S
#### 3.2 基本用法
使用this.$http傳送請求
this.$http.get(url, [options])
this.$http.head(url, [options])
this.$http.delete(url, [options])
this.$http.jsonp(url, [options])
this.$http.post(url, [body], [options])
this.$http.put(url, [body], [options])
this.$http.patch(url, [body], [options])
### 4. 練習
百度搜尋列表
課後作業:
1.只顯示4條
2.回車後在新頁面中顯示搜尋結果
## 二、Vue生命週期
vue例項從建立到銷燬的過程,稱為生命週期,共有八個階段
## 三、計算屬性
### 1. 基本用法
計算屬性也是用來儲存資料,但具有以下幾個特點:
a.資料可以進行邏輯處理操作
b.對計算屬性中的資料進行監視
### 2.計算屬性 vs 方法
將計算屬性的get函式定義為一個方法也可以實現類似的功能
區別:
a.計算屬性是基於它的依賴進行更新的,只有在相關依賴發生改變時才能更新變化
b.計算屬性是快取的,只要相關依賴沒有改變,多次訪問計算屬性得到的值是之前快取的計算結果,不會多次執行
### 3. get和set
計算屬性由兩部分組成:get和set,分別用來獲取計算屬性和設定計算屬性
預設只有get,如果需要set,要自己新增
## 四、 vue例項的屬性和方法
### 1. 屬性
vm.$el
vm.$data
vm.$options
vm.$refs
### 2. 方法
vm.$mount()
vm.$destroy()
vm.$nextTick(callback)
vm.$set(object,key,value)
vm.$delete(object,key)
vm.$watch(data,callback[,options])
## 五、自定義指令
分類:全域性指令、區域性指令
### 1. 自定義全域性指令
使用全域性方法Vue.directive(指令ID,定義物件)
### 2. 自定義區域性指令
### 3. 練習
拖動頁面中的元素
onmouseout
onmouseup
## 六、過渡(動畫)
### 1. 簡介
Vue 在插入、更新或者移除 DOM 時,提供多種不同方式的應用過渡效果
本質上還是使用CSS3動畫:transition、animation
### 2. 基本用法
使用transition元件,將要執行動畫的元素包含在該元件內
<transition>
運動的元素
</transition>
過濾的CSS類名:6個
### 3. 鉤子函式
8個
### 4. 結合第三方動畫庫animate..css一起使用
<transition enter-active-class="animated fadeInLeft" leave-active-class="animated fadeOutRight">
<p v-show="flag">網博</p>
</transition>
### 5. 多元素動畫
<transition-group>
### 6. 練習
多元素動畫
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2618/viewspace-2815695/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- promise由淺入深Promise
- MongoDB由淺入深MongoDB
- javascript由淺入深JavaScript
- JavaScript Promise由淺入深JavaScriptPromise
- MySQL索引由淺入深MySql索引
- 物件導向-由淺入深物件
- 純手寫Promise,由淺入深Promise
- iOS架構由淺入深 | MVVMiOS架構MVVM
- 由淺入深理解 IOC 和 DI
- Git由淺入深之分支管理Git
- 由淺入深學python(一)Python
- Git由淺入深之操作與指令Git
- 由淺入深理解Dubbo的SPI機制
- 由淺入深 docker 系列: (6) 映象分層Docker
- 由淺入深 docker 系列: (2) docker 構建Docker
- 由淺入深完全理解Java動態代理Java
- 由淺入深學C# 視訊教程C#
- 由淺入深學習JavaScript Debug技巧JavaScript
- Java 反射由淺入深 | 進階必備Java反射
- Git 由淺入深之細說變基 (rebase)Git
- 由淺入深 docker 系列: (5) 資源隔離Docker
- 由淺入深 docker 系列: (3) docker-composeDocker
- 第十八節:Skywalking由淺入深
- 前端如何理解正則-由淺入深的學習前端
- C#非同步程式設計由淺入深(一)C#非同步程式設計
- MVP架構由淺入深篇一(基礎版)MVP架構
- 【由淺入深_打牢基礎】HOST頭攻擊
- 【Fastjson】Fastjson反序列化由淺入深ASTJSON
- Git由淺入深之遠端主機(git remote)GitREM
- 由淺入深 docker 系列:(4) 容器與虛擬機器Docker虛擬機
- 【由淺入深學MySQL】- MySQL連線查詢詳解MySql
- 由淺入深,從掌握Promise的基本使用到手寫PromisePromise
- 由淺入深介紹 Redis LRU 策略的具體實現Redis
- Socket 由淺入深系列--------- 簡單實現程式設計(三)程式設計
- 由淺到深瞭解工廠模式模式
- 由淺入深地教你開發自己的 React Router v4React
- 由淺入深探究 MySQL索引結構原理、效能分析與優化MySql索引優化
- [轉帖]由淺入深瞭解GC入門篇(一):什麼是垃圾回收?GC