В вашем коде отсутствует закрывающая часть метода `addNode()`, что может привести к неправильной работе ключевых функций, и, в частности, к тому, что `errorNode` не будет обновляться.
Давайте сначала исправим метод `addNode()`, добавив необходимую логику и закрывающую фигурную скобку:
```javascript
addNode() {
if (!this.newNode) {
this.errorNode = 'Вы не ввели имя узла.';
return; // Выходим из функции, если поле пустое
}
this.info.nodes.push(this.newNode);
this.newNode = ''; // Очищаем поле ввода
this.errorNode = ''; // Очищаем сообщение об ошибке
}
```
Также убедитесь, что более ранний фрагмент кода, где вы определяете `data()`, написан правильно. У вас дважды объявлен метод `data()`, в нем не должно быть повторений. Правильная версия должна выглядеть следующим образом:
```javascript
export default {
data() {
return {
newNode: '',
errorNode: '',
ifEdited: false
};
},
props: {
info: {
type: Object,
required: true
},
index: {
type: Number,
required: true
},
deleteDevice: {
type: Function,
required: true
}
},
methods: {
editDevice() {
this.ifEdited = !this.ifEdited;
},
deleteNodes(index) {
this.info.nodes.splice(index, 1);
},
insertData(value) {
this.info.name = value;
},
addNodeInfo(value) {
this.newNode = value;
},
addNode() {
if (!this.newNode) {
this.errorNode = 'Вы не ввели имя узла.';
return; // Выход из функции
}
this.info.nodes.push(this.newNode);
this.newNode = ''; // Очищаем поле ввода
this.errorNode = ''; // Очищаем ошибку
}
}
};
```
Основные моменты, на которые стоит обратить внимание:
1. **Корректная инициализация данных**: Не нужно дублировать `data()`, все переменные должны быть определены в одном объекте.
2. **Обработка ошибок**: Убедитесь, что `errorNode` обновляется и очищается, когда это необходимо.
3. **Правильное связывание**: Убедитесь, что `errorNode` действительно используется в шаблоне через `{{ errorNode }}`.
После внесения вышеуказанных изменений значение `errorNode` должно отображаться корректно на странице, если будет устранена ошибка в вашем методе добавления узла.