javascript - vue.js状态管理for语句中的多个if条件获取数据并返回
问题描述
我在 vue.js 中使用状态管理来获取产品。我正在从数据库中获取带有 ID 的产品。如果 $state 已经有产品,我需要提出两个退货条件。
第一个条件是 $state.products 是否有任何产品而不是让它返回,并且
第二个条件,如果传递一个 ID 并根据 ID 获取相关日期,如果再次传递相同的 ID,它将返回值。
但我很困惑如何为多个匹配设置条件。我也为此尝试了逻辑 AND 运算符,但没有任何效果。请帮我解决这个问题。
这是我的代码。
产品.vue
mounted () {
this.$store.dispatch("loadProducts",this.category);
},
computed:{
...mapState([
'products'
])
},
这是我正在处理获取产品的状态管理的文件。index.js
const store = new Vuex.Store({
state: {
pageTitle: '',
products: [],
},
mutations: {
setTitle(state, title) {
state.pageTitle = title;
}
},
actions: {
loadProducts({ commit }, id) {
if (this.state.products.length != 0) {
var i;
for (i = 0; i < this.state.products.length; i++) {
var j = this.state.products[i].category_id;
}
} else if (this.state.products.length != 0 && id == j) {
console.log("RETURN");
return;
} else {
axios.get('/loadProducts/' + id)
.then(({ data }) => {
this.state.products = data.items;
console.log(this.state.products);
commit('set_products', data.items)
})
}
},
},
mutations: {
set_products(state, products) {
state.products = products;
}
}
});
解决方案
推荐阅读
- python - 实现 luigi 动态图配置
- arrays - 如何在 JSON 数组中使用 IndexOf?它正在返回-1
- django - Django静态文件得到404
- c# - 如何在 C# 中使用 AWSSDKCore.dll 和 AWSSDKLex.dll 获取有关服务器下所有 LexChatBot 的信息
- javascript - 使用 Javascript 和 C# 连接服务器和客户端
- c++ - 构造不同类型的 C++ 向量数组
- javascript - dc 传单 - 动态标记
- sql-server - Check_mk_agent 错误:未能收集 SQL Server 实例
- android - 降低 ble for android 的 Tx 功率
- visual-studio - 项目xamarin中不存在目标“CssG”