Хранить элементы объекта, используя vue.js - PullRequest
0 голосов
/ 30 января 2019
    data() {
        return: {
          user: {},
          userName: "",
          userAge: ""
    }
  },

methods: {

    saveUserName: function() {
          this.userName = this.newUserName;
          this.$refs.userNameModal.hideModal();
          this.$session.set('userDetails', {userName: this.userName});
        },

    saveUserAge: function() {
          this.userAge = this.newUserAge;
          this.$refs.userAgeModal.hideModal();
          this.$session.set('userDetails', {userAge: this.userAge});
        },

    },

    beforeMount: function() {
    if (this.$session.exists('userDetails')) {

          this.user = this.$session.get('userDetails');
          console.log("userDetails", this.user)
        }

    }

У меня есть пользовательская форма, в которой для каждой записи выскакивает модал, и пользователь должен заполнить, и, нажав кнопку «Готово», модал закрывается, вызывает определенную функцию (т.е. saveUserName ()), который является модальным, и установите его для хранения сессии.Поэтому мне интересно, как я мог бы заполнять пользовательский объект время от времени и устанавливать эти значения в моем хранилище сеанса ??На данный момент первое значение сбрасывается, а второе вступает во владение, и в моем случае мой пользовательский объект имеет либо userName, либо userAge.Вместо этого я ожидаю (в случае, если мое хранилище сеансов не пустое) из журнала beforeMount: user: {userName: "Mario", userAge: 27} Спасибо

1 Ответ

0 голосов
/ 30 января 2019
data() {
  return {
    user: {
      userName: "",
      userAge: ""
    },
  };
},

methods: {
  saveUserName: function() {
    this.user.userName = this.newUserName;
    this.$refs.userNameModal.hideModal();
    this.saveUser();
  },

  saveUserAge: function() {
    this.user.userAge = this.newUserAge;
    this.$refs.userAgeModal.hideModal();
    this.saveUser();
  },

  saveUser: function() {
    this.$session.set('userDetails', this.user);
  },
},

beforeMount: function() {
  if (this.$session.exists('userDetails')) {
    this.user = this.$session.get('userDetails');
    console.log("userDetails", this.user)
  }
}
...