最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue使用mounted和created時(shí),this無法指向data中的數(shù)據(jù)問題

 更新時(shí)間:2023年07月04日 08:38:19   作者:Mboss76  
這篇文章主要介紹了Vue使用mounted和created時(shí),this無法指向data中的數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

使用mounted和created,this無法指向data中的數(shù)據(jù)問題

問題描述

預(yù)想在Vue創(chuàng)建頁面時(shí)接收后端數(shù)據(jù),然后渲染到頁面。

使用data進(jìn)行數(shù)據(jù)綁定,可是數(shù)據(jù)修改不成功。

//想要修改data中的gameNum
data(){
    return{
      allGames:'',
      gameNum:0
    }
  }
mounted() {
    axios.post('http://localhost:3000/allGames').then(function (response){
      console.log(response.data.gameNum);//先輸出響應(yīng)回來的gameNum
      this.gameNum=response.data.gameNum;//賦值給data中的gameNum
      console.log(this.gameNum);//然后輸出data中的gameNum
      }}

結(jié)果如下:

控制臺(tái)只輸出了響應(yīng)回來的gameNum,并且報(bào)錯(cuò)this.gameNum沒有找到

控制臺(tái)只輸出了響應(yīng)回來的gameNum,并且報(bào)錯(cuò)this.gameNum沒有找到!

問題分析

最開始的理解中this.gameNum指的是Vue中的數(shù)據(jù)gameNum,事實(shí)并不如此,這里的this代指window對(duì)象而不是Vue對(duì)象,所以真正找的是window對(duì)象下的gameNum,但是window下沒有g(shù)ameNum,所以就報(bào)錯(cuò)了。

解決辦法

解決辦法很簡(jiǎn)單,把指向vue對(duì)象保存給一個(gè)變量that,在后面引用that來修改數(shù)據(jù)即可。

mounted() {
    let that=this;//將vue對(duì)象的引用保存在that中
    axios.post('http://localhost:3000/allGames').then(function (response){
      console.log(response.data.gameNum);
      that.gameNum=response.data.gameNum;//使用that來指向vue
      console.log(that.gameNum);
    }}

控制臺(tái)輸出了正確結(jié)果:

在這里插入圖片描述

Vue中created、mounted等方法整理

  • created:html加載完成之前,執(zhí)行。執(zhí)行順序:父組件-子組件
  • mounted:html加載完成后執(zhí)行。執(zhí)行順序:子組件-父組件
  • methods:事件方法執(zhí)行
  • watch:watch是去監(jiān)聽一個(gè)值的變化,然后執(zhí)行相對(duì)應(yīng)的函數(shù)。
  • computed:computed是計(jì)算屬性,也就是依賴其它的屬性計(jì)算所得出最后的值
export default {
     name: "draw",
     data(){      // 定義變量source        
       return {
         source:new ol.source.Vector({wrapX: false}),
       }
     },
    props:{ //接收父組件傳遞過來的參數(shù)
      map:{
        //type:String
      },
    },
mounted(){   //頁面初始化方法
    if (map==map){
    }
    var vector = new ol.layer.Vector({
      source: this.source
    });
    this.map.addLayer(vector);
  },
  watch: {   //監(jiān)聽值變化:map值
    map:function () {
      console.log('3333'+this.map);
      //return this.map
      console.log('444444'+this.map);
      var vector = new ol.layer.Vector({
        source: this.source
      });
      this.map.addLayer(vector);
    }
  },
  methods:{   //監(jiān)聽方法  click事件等,執(zhí)行drawFeatures方法
       drawFeatures:function(drawType){}
}
 

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue項(xiàng)目使用websocket技術(shù)解讀

    vue項(xiàng)目使用websocket技術(shù)解讀

    文章介紹了WebSocket的出現(xiàn)背景、特點(diǎn)以及在Vue項(xiàng)目中的應(yīng)用方法,WebSocket是一種在單個(gè)TCP連接上進(jìn)行全雙工通信的協(xié)議,適合實(shí)時(shí)通信場(chǎng)景,在Vue項(xiàng)目中使用WebSocket時(shí),需要注意瀏覽器兼容性、連接與斷開時(shí)機(jī)以及后端接口的配置
    2025-12-12
  • Vue2.0點(diǎn)擊切換類名改變樣式的方法

    Vue2.0點(diǎn)擊切換類名改變樣式的方法

    今天小編就為大家分享一篇Vue2.0點(diǎn)擊切換類名改變樣式的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • 解決vue 打包發(fā)布去#和頁面空白的問題

    解決vue 打包發(fā)布去#和頁面空白的問題

    今天小編就為大家分享一篇解決vue 打包發(fā)布去#和頁面空白的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue2從template到render模板編譯入口詳解

    vue2從template到render模板編譯入口詳解

    這篇文章主要為大家介紹了vue2從template到render模板編譯入口詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • vue router 配置路由的方法

    vue router 配置路由的方法

    這篇文章主要介紹了vue router 配置路由的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-07-07
  • vue遞歸組件實(shí)戰(zhàn)之簡(jiǎn)單樹形控件實(shí)例代碼

    vue遞歸組件實(shí)戰(zhàn)之簡(jiǎn)單樹形控件實(shí)例代碼

    這篇文章主要介紹了vue遞歸組件實(shí)戰(zhàn)之簡(jiǎn)單樹形控件的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 3分鐘讀懂移動(dòng)端rem使用方法(推薦)

    3分鐘讀懂移動(dòng)端rem使用方法(推薦)

    這篇文章主要介紹了rem使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 使用Vue CLI創(chuàng)建typescript項(xiàng)目的方法

    使用Vue CLI創(chuàng)建typescript項(xiàng)目的方法

    這篇文章主要介紹了使用Vue CLI創(chuàng)建typescript項(xiàng)目的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • vuex實(shí)現(xiàn)購物車功能

    vuex實(shí)現(xiàn)購物車功能

    這篇文章主要為大家詳細(xì)介紹了vuex實(shí)現(xiàn)購物車功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • vue3中使用print-js組件實(shí)現(xiàn)打印操作步驟

    vue3中使用print-js組件實(shí)現(xiàn)打印操作步驟

    文章介紹了在Vue?3中使用print-js組件實(shí)現(xiàn)打印操作的步驟,包括安裝依賴、創(chuàng)建打印組件和處理打印預(yù)覽界面,文章還提到打印預(yù)覽界面的樣式調(diào)整對(duì)打印效果的影響,并展示了HTML展示和打印預(yù)覽效果,最后,文章鼓勵(lì)讀者繼續(xù)瀏覽相關(guān)文章并支持腳本之家
    2025-02-02

最新評(píng)論

壤塘县| 昌平区| 南陵县| 昭苏县| 新郑市| 五指山市| 无锡市| 依兰县| 昌乐县| 左贡县| 兴仁县| 洪湖市| 循化| 茶陵县| 左贡县| 阳原县| 富川| 禄丰县| 海城市| 大洼县| 喜德县| 颍上县| 靖江市| 新余市| 资兴市| 苏州市| 浏阳市| 邵阳市| 建昌县| 建瓯市| 汶川县| 滕州市| 庐江县| 儋州市| 兴安县| 承德县| 阿荣旗| 黔江区| 屯留县| 中方县| 高州市|