javascript - vue 2.0中,如果el不存在,怎麼讓ajax不要執行了
伊谢尔伦
伊谢尔伦 2017-06-26 10:55:39
0
2
859

因為一個頁面有多個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....

}

還有沒有更好的方法

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回覆(2)
学习ing

首先要明白一點,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 +")");
                        }
                    });
                }
            }
        });
phpcn_u1582

https://cn.vuejs.org/v2/guide...生命週期圖示

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板