成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - vue 2.0中,如果el不存在,怎樣讓ajax不要執(zhí)行下去了

瀏覽:112日期:2023-05-24 17:34:25

問題描述

因?yàn)橐粋€(gè)頁面有多個(gè)ajax請求,或者想多個(gè)頁面調(diào)用一個(gè)js的時(shí)候,不需要用到的ajax,他也會(huì)請求數(shù)據(jù),如何解決這個(gè)問題。beforeCreate與mounted不管用,不管<p id='el名'>存不存在,用控制臺(tái)監(jiān)控,還是一樣會(huì)發(fā)出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 +')'); }}) }});

是不是必須加個(gè)p的判斷呢?比如:

if($(’#right-notice’).length>0){ ajax....}

還有沒有更好的方法

問題解答

回答1:

首先要明白一點(diǎn),html是html,js是js,你的代碼new了一個(gè)Vue對(duì)象,這個(gè)對(duì)象并不會(huì)依存于right-notice這個(gè)元素,并不是這個(gè)元素不存在對(duì)象就無法實(shí)例化,需要你自己加邏輯去判斷是否存在這個(gè)元素

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 +')');} });} }});回答2:

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

標(biāo)簽: JavaScript