将Array作为prop传递给其他组件

时间:2019-06-14 06:09:40

标签: vue.js vue-component

我正在尝试将对象数组作为道具传递给组件。传递数组时不使用数组。我都没有收到任何编译错误。

我实际上尝试查看对象尝试了一些东西。但这没用

代码如下:

CardRenderer.vue:

build_exe

Something.vue

setup.py

这就是我作为道具发送的东西。

enter image description here

这是我在组件上收到的

enter image description here

1 个答案:

答案 0 :(得分:1)

这里有几个问题。

首先,您应该使用kebab大小写的属性名称和值周围的引号...

<CardRenderer :render-data="valObj" />

第二个问题与时间相关。在您的组件中,您基于rows钩子中的初始renderData计算mounted,但是当父组件更改valObj时,该值将不会更新。

您应该做的是使用计算属性,该属性将对valObj / renderData的更改做出反应。

例如

data () { return {} }, // removed rows from data
computed: {
  rows () {
    let itemsPerRow = 3
    let rows = []
    for (let i = 0; i < this.renderData.length; i += itemsPerRow) {
      rows.push(this.renderData.slice(i, i + itemsPerRow))
    }
    return rows
  }
}