Как правильно редактировать опору в vue.js без изменения родительских данных? Я имею в виду, что всякий раз, когда мы передаем какое-либо свойство от родителя к потомку в vue.js, тогда, если мы вносим какие-либо изменения в это свойство в дочернем компоненте, это изменение также отражается в родительском компоненте.
Есть ли способ в vue.js сделать локальную копию переданного свойства в дочернем элементе?
Я погуглил, но везде написано, что этим можно добиться.
props:["user"],
data(){
return {
localUser: Object.assign({}, this.user)
}
}
здесь пользователю передается объект, и я создаю его копию в локальном пользователе, но он вообще не работает, локальный пользователь не определен.
Сталкивались ли вы с подобным сценарием, когда вам нужно внести изменения в родительское свойство в дочернем компоненте, не влияя на состояние родительского компонента, т.е. создать свою собственную копию в дочернем компоненте, а затем отредактировать ее?
Любая информация по этому поводу будет полезна.
Я также где-то читал, что в In vue @ 2.3.3 ,, когда мы хотим передать опору из компонента «Отец» в дочерний компонент, нам нужно вручную создать локальные данные для сохранения опоры, что делает много бесполезной работы.
мы можем вручную создать локальные данные следующим образом:
props: ['initialCounter'],
data: function () {
return { counter: this.initialCounter }
}
но в моем случае это тоже не работает. Я использую vue cli 3.0.1 для целей разработки.
Вот мой код для того же.
В моем приложении есть список.
Когда пользователь нажимает кнопку См. Сфокусированное представление, пользователь перенаправляется к указанному ниже представлению, то есть фактически является загрузочным - модальным представлением.
Здесь пользователь может редактировать значение Name, но поскольку я передаю name здесь как свойство из aprent компонента, редактирование его здесь приводит к его обновлению и в родительском компоненте, то есть в представлении списка.
Object.assign
, как вы упомянули, должно работать, как показано в этой демонстрации. - person tony19   schedule 23.09.2018