我目前正在写博客,有点卡住了,我需要一些帮助!
用户创建文章时,可以设置特殊标签,以通过属性“位置”将文章推到网站顶部。因此article.position
可以等于“第一”,“第二”,“第三”或“无”(这是默认位置),具体取决于用户设置的内容。
这是使用axios创建文章的方法:
addArticle() {
axios.post('http://localhost:4000/articles', {
title: this.title,
description: this.description,
content: this.content,
position: this.position,
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
},
一切正常,但这是问题所在:
当用户创建具有特殊位置的文章时,如果文章已经设置为相同位置,我希望将其替换为用户刚刚设置的新文章。
例如:
旧的文章A具有position == "first"
。用户正在创建新的商品B,并且他希望商品B位于顶部,他设置了position == "first"
。文章现在应将职位设置为“无”。
重要说明:文章位于Vuex商店中。
这是我在axios请求上方的addArticle方法中尝试过的内容:
if (article.position == "first") {
let articlesList = this.$store.state.articles
for (var i = 0; articlesList.length; i++) {
if(articlesList[i].position == "first")
articlesList[i].position == "none"
}
}
我是菜鸟,所以可能有很多错误,我在做什么错?
谢谢您的时间!
答案 0 :(得分:0)
if (article.position === 'first') {
let articlesList = this.$store.state.articles;
for (i = 0; i < articlesList.length; i++) {
if(articlesList[i].position === 'first')
articlesList[i].position = "none"
}
}
我只是在不进行最佳实践和介绍的情况下进行最小的更改。