gpt4 book ai didi

javascript - 函数外部数据为 null (Vue Js)

转载 作者:行者123 更新时间:2023-12-02 22:20:55 28 4
gpt4 key购买 nike

我正在尝试使用 vuejs 和 ajax 创建 API

如你所见,我抛出了 buffer里面codes通过this.codes = buffer但只是在 success() 内工作功能

codes在函数之外为 null

我的代码尝试:

<div id="app">
<a v-on:click.prevent="GetId($event)" value="1">click me!</a>
@{{ codes }}
</div>

<script type="text/javascript" language="JavaScript">

new Vue({
el: '#app',
data: {
codes:null
},
methods:{
GetId:function (event) {
element = event.currentTarget;
value = element.getAttribute('value');
$.ajax({
type : 'GET',
url : 'api/GetProduct/'+value,
async : false,
beforeSend : function(){},
dataType : 'json',
success : function(result){
var buffer="";
for(let i=0 ;i < Object.keys(result).length;i++) {
buffer += "<div class='category-item'><a class='button-product-info-s' href='/product/"+result[i]['id']+"'/><img class='product-img-s' src='"+result[i]['pic_url'] +"'></a><p class='product-name-s'>"+result[i]['name']+"</p><a class='btns btn-primarys btn-buy-s' href='/product/"+result[i]['id']+"'></div>";
}
console.log(buffer);
this.codes= buffer;
}
});
}}});
</script>
</body>
</html>

最佳答案

尝试将成功函数更改为箭头函数,因此:

success : function(result){ ... }

至:

success :  result => { ... }

原因是非箭头函数改变了“this”

关于javascript - 函数外部数据为 null (Vue Js),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59230827/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com