GSO (vue04)

vue生命週期

生命週期:指Vue實例創建,運行到銷燬期間,總是伴隨着各種各樣的事件,這些事件統稱爲生命週期。
生命週期鉤子:生命週期事件(函數)。
主要分類:
創建期間的生命週期函數:

  • beforeCreate:實例剛在內存中被創建出來,此時,還沒有初始化好data和methods屬性。

  • created:實例已經在內存中創建,此時data和methods已經創建,此時還沒有開始編譯模板。

  • beforeMount:此時已經完成了模板的翻譯,但是還沒有掛載到頁面中

  • mounted:此時已經將編譯好的模板,掛載到了頁面的容器中顯示。

運行期間的生命週期函數:

  • beforeUpdate:狀態更新之前執行此函數,此時data中的狀態是最新的,但是界面上顯示的數據還是舊的,因爲此時還沒有開始重新渲染Dom節點。

  • updated:實力更新之前執行此函數,此時date
    中的狀態值是最新的,但是界面上顯示的數據還是舊的,因爲此時還沒有開始重新渲染Dom節點。

銷燬期間的生命週期函數:

  • beforeDestroy:實例銷燬之前調用,在這一步,實例完全可用。

  • destroyed:Vue實例銷燬之後調用。調用後,Vue實例知識的所有東西都會解綁定。所有的事件監聽都會被移除,所有的子實例也會被銷燬。

vue-resource 實現 get,post,json請求

全局Vue

        Vue.http.get('/someUrl',[options]).then(successCallback,errorCallback);
        Vue.http.post('/someUrl',[body],[options]).then(successCallback,errorCallback);
   Vue.jsonp('http://......').then( data => {
        console.log(data);
        
    })

Vue實例中

 this.$http.get('/someUrl',[options]).then(successCallback,errorCallback);
    
    this.$http.post('/someUrl',[options]).then(successCallback,errorCallback);
this.$jsonp('http://......').then( data => {
    console.log(data);
})

[options]爲可選參數,通過then獲取服務器返回數據,successCallback爲訪問成功回調函數,必須設置。、
post第三個參數最好設置爲{emulateJSON:true}設置的內容爲普通表單數據格式。(emulateJSON可全局配置)
實例

 this.$http.get("http://127.0.0.1:3000/del?n="+i).then(function(result){
    				  					  console.log(result.body);
    				  })

JSONP的實現原理,由於瀏覽器的安全性限制,不允許ajax訪問協議不同,端口不同數據接口。
可以通過動態創建script標籤的形式,把script標籤的src屬性,指向數據接口的地址,因爲script標籤不存在跨域限制,這種數據獲取方式,稱作JSONP

全局配置接口根域名

實例:
全局:

  Vue.http.options.root = "http://127.0.0.1:3000/"
    this.$http.get("data").then(function(result){
    					  console.log(result.body);
    					
    				  })

私有:

new Vue({
http:{
			  root:"http://127.0.0.1:3000/"
		  }
		  })

設置根域名後url地址要使用相對路徑(前面不加“/”)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章