首页 > 解决方案 > Vue和简单的商店

问题描述

我创建了 Vue 应用程序并且我有一个简单的商店:

const paginationStore = {
  data: {
    entitiesDisplayOptions: [
      { value: '1', text: '1' },
      { value: '2', text: '2' },
      { value: '4', text: '4' },
      { value: '999999', text: 'All' },
    ],
    paginationLimits: {
      bottom: 0,
      top: paginationStore.data.entitiesDisplayOptions[0].value
    }
  }
}

我收到错误:

未捕获的类型错误:无法读取未定义的属性“数据”

为什么我不能将 entityDisplayOptions 的值设置为 paginationStore.data.paginationLimits.top?我应该怎么做才能使它起作用?

标签: vue.js

解决方案


您可以将其存储在定义之外的变量中:

const newEntitiesDisplayOptions = [
      { value: '1', text: '1' },
      { value: '2', text: '2' },
      { value: '4', text: '4' },
      { value: '999999', text: 'All' },
];

const paginationStore = {
  data: {
    entitiesDisplayOptions: newEntitiesDisplayOptions ,
    paginationLimits: {
      bottom: 0,
      top: newEntitiesDisplayOptions[0].value
    }
  }
}

推荐阅读