我正在努力将一条信息传递给我的一个组件。
我正在尝试迭代数据列表,并将列表的最后一项的布尔值设置为true。我遇到了一个有趣的不一致,如果我在下面的代码中使用v-bind:isLast="index + 1 == tiers.length"
,它的计算结果为false,但如果我做v-bind:test="{index: index, tiersLength: tiers.length, bool: index + 1 == tiers.length}"
并使用一个对象存储该信息而不是期望一个布尔值,那么bool键在对象中具有true值。
有谁知道这是为什么?而且,作为计算属性,这会更好吗?我真的不想将更多信息从层列表传递到组件中,因为我觉得该组件应该完全忽略层级列表。
<section id="classification-metadata-editor">
<metadata-button-row
v-for="(row,index) in tiers"
v-bind:row="row"
v-bind:index="index"
v-bind:isLast="index + 1 == tiers.length"
v-bind:test="{index: index, tiersLength: tiers.length, bool: index + 1 == tiers.length}">
</metadata-button-row>
</section>
isLast: false
test: {index: 0, tiersLength: 1, bool: true}
我不太确定这是否打算,因为我觉得我做的事情比设置道具的意图要多一点,但我不太确定如何做到这一点。我一直在寻找类似的问题,但不太确定搜索的正确术语,所以如果在其他地方有这个问题我会道歉。
谢谢!
答案 0 :(得分:0)
您不能像这样将对象分配给道具:
sed "/keyword_A/s/A5{ATTR}='[A-Z0-9]*'/A5{ATTR}='NEW'/gp" -n test.txt
您必须创建一个计算属性或方法来获取此对象,如下所示:
v-bind:test="{index: index, tiersLength: tiers.length, bool: index + 1 == tiers.length}">
并在模板中使用此方法:
methods: {
getObject (index) {
return {index: index, tiersLength: this.tiers.length, bool: index + 1 == this.tiers.length}
}
}