我有一个奇怪的用例,用于映射对象的字段。 FWIW,我对数据(v-for
)
Vue.js
例如,
<div> {{ item['foo'] }} </div>
效果很好✅
<div> {{ item['foo.bar'] }} </div>
什么都不渲染❌
<div> {{ item['foo.bar[0].baz'] }} </div>
什么都不渲染❌
我尝试使用正则表达式进行转换
<div> {{ 'item[foo.bar]'.match(/([\w\.]+)/g).join('.') }} </div>
刚刚渲染了字符串。
如何正确执行以下操作,{{ item['foo.bar'] }}
与{{ item.foo.bar'] }}
答案 0 :(得分:0)
我想通了,效果很好
我的对象如下:
{ foo: { bar: 23 } }
在我的渲染中:
<div> {{ formatResult(item, 'foo.bar') }} </div>
使用方法执行以下操作:
formatResults(item, fields){
return fields.split(".").reduce((a, b) => a[b], item)
// this returns 23
}