VueJS использует данные Mixin для инициализации свойства Vue - PullRequest
0 голосов
/ 19 марта 2019

Смешанные данные, по-видимому, недоступны для инициализации данных компонента.

В приведенной ниже скрипте приложение использует MyMixin.mixinMessage доступен в хуке созданного (), но не в инициализации данных.Что я делаю не так?

https://jsfiddle.net/rb81qp5a/2/

const { default: Component, Mixins } = VueClassComponent

@Component()
class MyMixin extends Vue {
  mixinMessage = 'mixin message'
}

@Component({
  template: `
  <div>
    <h1>Message 1: {{ message1 }}</h1>
    <h1>Message 2: {{ message2 }}</h1>
    </div>
  `,
  mixins: [MyMixin]
})
class App extends Vue {
  message1 = this.mixinMessage
  message2 = ''

  created() {
    this.message2 = this.mixinMessage
  }
}

new Vue({
  el: '#app',
  render: h => h(App)
})

Пример без vue-class-component: https://codepen.io/anon/pen/PLdmWE

  • Свойство Mixin (init) равнопусто, но ожидается, что оно будет "свойством Mixin"
  • Свойство Mixin (создано) равно "свойству Mixin", как и ожидалось
...