我正在尝试将AngularJS应用转换为Vue JS。但是,我不断收到js错误,例如“未捕获的TypeError:无法设置未定义的属性'isEditMode'”。

我要在这里做的是,当单击vuetify图标时使页面可编辑,这反过来又调用一个函数并显示其他一些图标。我目前拥有的代码如下:

new Vue({
    el: '#app',
    data: {
        saveView: false,
        isPageEdit: false,
        saveFailed: false,
        isPageLocked: false,
        editFailed: false,
        timerMessage: false,
        boundData:
            {
                sections: {
                    isEditMode: null
                }
            }
    },

    methods:
        {
            setedit: function (isEditMode, sectionId) {
                this.boundData.sections[sectionId].isEditMode = isEditMode;
                validation(sectionId);


如何解决?

最佳答案

您需要首先将部分设置为对象数组。那么您可以像这样访问您的财产

所以像这样

sections: [
  {isEditMode: null},
  {isEditMode: true},
]


或者,如果您想保留当前的数据结构,则可以像this.boundData.sections.isEditMode这样直接访问isEditMode

10-07 21:29