日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

methods中axios里的数据无法渲染到页面

發布時間:2023/12/3 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 methods中axios里的数据无法渲染到页面 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近在研究axios聊天室室遇到一個問題
將axios獲取到的數據傳遞給data,從而改變頁面中的數值,但是結果令人失望

這是data里的數據

原想將data中的items數組換成axios里的response.data,后來發現items一直為空,就拿字符串做實驗了,里面放的123,
而在axios中

將items改成kkk

結局是:
在網頁中渲染的數據還是1232,


根本無法改變data中的數據。

而通過另一方面試驗,直接在methods中添加函數比如

ccc:function(){this.items = "kkkk";}

這樣做卻是可以改變數據。

我想的是,axios是一個函數,內部函數是無法改變外部的值的。

但是我又不能把axios放到mounted中,這樣我就不能通過
setInterval(“app.aaa()”, 1000);
來實現輪詢聊天了,所以必須找個辦法把值傳出去

結局

終于知道這個是緩存問題,瀏覽器只認第一個,,,必須采取一種手段欺騙瀏覽器
或者在reciever.php后面加一個?t=time,一直在變化的時間
但我試了還是不行

附一段代碼
index.html

<!DOCTYPE html> <html lang="en"><head><title></title><meta charset="UTF-8"></head><body><div id="app"><button @click="fn">1111</button>{{msg}}</div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script src="https://unpkg.com/axios/dist/axios.min.js"></script><script>let vm = new Vue({el: '#app',data:{msg:''},methods:{fn(){axios.get('data.json').then(res=>{console.log(res);this.msg=res.data.data})}}})// axios.get('./data.json')// .then(res=>{// console.log(res.data.data)// })// .catch(err=>{// console.log(err)// })// axios({// url:'./data.json',// method:'get'// }).then(res=>{// console.log(res)// }).catch(err=>{// console.log(err)// })</script></body> </html>

data.json

{"meta": {"msg": "提示信息","status": 200},"data": [{"id": 1, "title": "test1"},{"id": 2, "title": "test2"},{"id": 3, "title": "test3"},{"id": 4, "title": "test4"}] }

點擊還是可以調用的

總結

以上是生活随笔為你收集整理的methods中axios里的数据无法渲染到页面的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。