Доступ к свойству объекта в JS - PullRequest
0 голосов
/ 01 ноября 2018

Я сейчас работаю над блогом, и я застрял, мне нужна помощь!

Когда пользователь создает статью, он может установить специальный тег, чтобы выдвинуть статью поверх сайта через свойство «позиция». Таким образом, article.position может быть равно «first», «second», «third» или «none» (что является положением по умолчанию) в зависимости от того, что пользователь установил.

Вот метод создания статьи с помощью 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);
      });
   },

Все работает отлично, но вот проблема:

Когда пользователь создает статью со специальной позицией, если статья уже установлена ​​на ту же позицию, я хочу, чтобы она была заменена новой статьей, которую пользователь только что установил.

Например: Старая статья А имеет position == "first". Пользователь создает новую Статью B и хочет, чтобы Статья B шла вверху, он устанавливает position == "first". Статья Позиция теперь должна быть установлена ​​как «none».

Важное примечание: статьи находятся в магазине Vuex.

Вот что я попробовал в методе addArticle над запросом axios:

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"
  }
}

Я новичок, так что может быть много ошибок, что я делаю не так?

Спасибо за ваше время!

1 Ответ

0 голосов
/ 01 ноября 2018
  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"
    }
  }

Я просто делаю небольшие изменения, не упоминая лучшие практики и прочее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...