Магазин Vue не определен, когда компонент имеет пользовательский конструктор - PullRequest
0 голосов
/ 28 марта 2019

Когда я пытаюсь включить пользовательский конструктор в свой компонент vue, который обращается к хранилищу vuex в другой функции, я получаю ошибку во время выполнения.Хранилище не определено во время создания компонента.

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

export default class myComponent extends Vue {
    myVal: myType[] = this.$store.getters.getVal;

    constructor(){
        //call Vue constructor
        super();
        //do Stuff
    } 

}

При такой установке я получаю ошибку. Невозможно прочитать свойство 'состояние' из неопределенного

Если я включаю другой компонент, это как-то работает.

import anotherComponent from "./AnotherComponent.vue";

@Component({
    components: {
        anotherComponent
    }
})

export default class myComponent extends Vue {
...
}

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

Я хотел бы понять, как я могу создать компонент с помощью конструктора, а также получить доступ к хранилищу в том же компоненте без необходимости импортировать некоторые ненужные другие зависимости.Я предполагаю, что упускаю что-то важное, но, к сожалению, я не могу понять это.Vue + Typescript, похоже, не является популярной комбинацией, несмотря на то, что до сих пор она мне нравилась.

Рад любой информации по этому вопросу.

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