У меня есть Vue js компонент. Смонтированный хук может вызывать некоторые методы, а не другие. Например, мой смонтированный хук может вызывать метод printSomething (), но не showLayers ().
mounted() {
this.printSomething()
this.showLayers();
},
methods: {
printSomething() {
console.log("hello world");
},
showLayers() {
var tempSelectedLayers = [];
for (var i = 0; i < this.layers.length; i++) {
var layer = this.layers[i];
console.log(layer.layerName + ", " + layer.checked);
if (layer.checked == true) {
tempSelectedLayers.push(layer);
}
}
eventBus.$emit(
"showLayers",
tempSelectedLayers
);
},
* vue cli отображает сообщение об ошибке:
vue .esm. js? A026: 628 [Vue warn]: ошибка в Обработчик события для showLayers: «TypeError: _this.showLayers не является функцией» *
Из тестирования моего кода по URL-адресу локального хоста становится ясно, что функция showLayers () действительно вызывается несмотря на то, что сообщение об ошибке. Если я удалю вызов showLayers () из смонтированного хука, то желаемое поведение не произойдет. Это говорит о том, что ошибка связана с состоянием гонки. Если так, как я могу решить это? Приветствия