vue2 «вычисленное» значение, созданное после «созданного» значения - PullRequest
0 голосов
/ 22 ноября 2018

Я в замешательстве, потому что, когда я ищу в Google и нахожу статьи, все говорят мне в жизненном цикле vue, 'computed' было до 'create', но в моем коде я получил результат 2 перед результатом 1, как можно решить эту проблему?

computed: {
    options() {
        const imgData = {
          img: this.modifyData,
          fixedNumber: this.ratio
        }
        console.log(1)
        return Object.assign({}, this.defaultOptions, imgData)
    }
},
watch: {
    modifyData(nval) {
        // nothing to do yet
    }
},
created() {
    console.log(2)
},
  ...

обновление: 'this.modifyData' было от axios.get (...), поэтому вначале оно было бы неопределенным, хотя я решил эту проблему, но все еще не понял, почему результат 2было идти до результата 1?

1 Ответ

0 голосов
/ 22 ноября 2018

Когда экземпляр vue инициализируется, запускается функция created.Вот почему вы видите 2.Причина, по которой значение из вашего вычисленного свойства выходит из системы 1 позднее, заключается в том, что вычисленные свойства являются ленивыми, что означает, что их значения не создаются до тех пор, пока они не потребуются.

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