Я создаю веб-приложение, которое отображает продукты (вся информация о продукте поступает из базы данных), каждый продукт имеет кнопку More Details >>
, при нажатии открывается модальное окно, которое содержит информацию об этом конкретном продукте. Файл js содержит функцию allRecords (), которая вызывается несколько раз, что делает вкладку «Сеть» в Inspection сумасшедшей. Я бы хотел, чтобы его называли только один раз. Я посмотрел на это: Как вызвать метод 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
}
}
})