代码之家  ›  专栏  ›  技术社区  ›  Luca Cattide

Vue Material-数据提取中的MDTable初始化错误

  •  1
  • Luca Cattide  · 技术社区  · 6 年前

    正如我所说的 here ,我正在尝试获取远程数据以初始化 MdTable 组件,但进程抛出 null 错误。从中提取的数据 MySQL DB,A的一部分 拉拉维尔5.6 API项目。

    在深入分析之后,我假设问题是由于在获取过程完成之前组件本身的过早初始化造成的。因此,管理组件数据的模型结果为空,并且呈现崩溃。

    我尝试了不同的方法:导航由 VUE路由器 所以两者 Before/After Navigation data fetching 技术已经过测试,结果是一样的。为了避免这个问题,使用来自父组件的道具以及定义组件导航保护似乎是无用的。

    我认为解决方案可能是在获取数据之前保持组件呈现。但我真的不知道怎么做。我尝试过 beforeCreate()/created() 也一样,但他们都没有帮助。

    在这种情况下,我被困了很多天,一些帮助或建议,最后尝试一个新的方向,真的很感激。

    事先谢谢你的帮助。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Luca Cattide    6 年前

    As I stated here ,由于我的实现中的语法错误:

    [...]
    <md-table-cell v-for="(val, i) in item" :key="val.id" v-if="(i !== 'id') && (i !== 
    'estensione_garanzia') && (i !== 'note')"
    [...]
    

    属性 :key="val.id" 配置错误。在本例中,我迭代一个对象数组(没有嵌套对象),因此没有子属性 id 在选定的元素上。有关详细信息,请访问 official doc 显示了一个完整的示例

    通过这样更改属性:

    :key="val.id"
    

    一切正常。