因為一個頁面有多個ajax請求,或是想多個頁面呼叫一個js的時候,不需要用到的ajax,他也會請求數據,如何解決這個問題。 beforeCreate與mounted不管用,不管<p id="el名">
存不存在,用控制台監控,還是一樣會發出ajax請求,請大大們幫忙解惑,感激不盡
var rnotice =new Vue({
el: '#right-notice',
data: {sites:''},
beforeCreate: function(){
var _self = this;
$.ajax({
type:'GET',
url:notice,
success:function(data){
_self.sites = eval("(" + data +")");
}
})
}
});
是不是必須加個p的判斷呢?如:
if($('#right-notice').length>0){
ajax....
}
還有沒有更好的方法
学习ing2017-06-26 10:57:39
首先要明白一點,html是html,js是js,你的程式碼new了一個Vue對象,這個對象並不會依存於right-notice這個元素,並不是這個元素不存在對象就無法實例化,需要你自己加邏輯去判斷是否存在這個元素
var rnotice =new Vue({
el: '#right-notice',
data: {sites:''},
beforeCreate: function(){
if(document.getElementById("right-notice")) {
var _self = this;
$.ajax({
type:'GET',
url:notice,
success:function(data){
_self.sites = eval("(" + data +")");
}
});
}
}
});