我正在创建一个显示产品的 Web 应用程序(所有产品信息都来自数据库),每个产品都有一个More Details >>按钮,单击时会打开一个包含该特定产品信息的模式窗口。js 文件包含被多次调用的 allRecords() 函数,这使得检查中的网络选项卡变得疯狂。我希望它只被调用一次。我看过这个:如何只触发一次 vue 方法,而不是每次都触发,我不确定如何将它应用到我的代码中。
这是我的代码如下:
PHP文件
<div id="myapp">
{{ allRecords() }}
<div class="content">
<div class="nested" v-for="product in products">
...
</div>
<b-modal id="productModal" v-if="chosenProduct" hide-footer="true" ok-title="Buy Now" size="lg" :title="chosenProduct.Name">
<div class = "inner-container">
...
</div>
</b-modal>
</div>
</div>
JS文件
var app = new Vue({
'el': '#myapp',
data: {
products: "",
chosenProduct: null
},
methods: {
allRecords: function(){ \\ This function here is being called multiple times
axios.get('ajaxfile.php')
.then(function (response) {
app.products = response.data;
})
.catch(function (error) {
console.log(error);
});
},
chooseProduct: function (product) {
app.chosenProduct = product
}
}
})
慕容3067478
相关分类