【wxml bug】模板语法bug反馈
- 当前 Bug 的表现(可附上截图)
使用自定义组件的时候,有时候需要将一个JS对象作为参数传递,会出现这样的使用方法:
第一种写法:
<comp1 obj="{{{a: 1, b: 2}}}"></comp1>
最外的两层花括号表明这是一个表达式,表达式的值是{a: 1, b: 2},但是这种写法在开发者工具上直接报错了。
第二种写法:
<comp1 obj="{{a: 1, b: 2}}"></comp1>
这是参考template的写法,只有两层花括号,但是也报错了。
第三种写法:
<comp1 obj="{{ {a: 1, b: 2} }}"></comp1>
这时候就能正常显示了,但这个和第一种写法有什么区别?我不认为加减一个空格会影响到表达式的表现才对。
同时,文档里template有一种写法:
<template is="objectCombine" data="{{...obj1, ...obj2, e: 5}}"></template>
<template is="objectCombine" data="{{foo, bar}}"></template>
这种写法我认为是不是也有问题?两个花括号表示这是一个表达式的话,js里没有这样的表达式吧?…obj1, …obj2, e: 5?foo, bar?这能是一个对象吗
文档里还有另一种写法:
<view wx:for="{{[zero, 1, 2, 3, 4]}}">{{item}}</view>
这个为什么就能正常了?这和第一种写法有什么区别?能在模板语法里构造数组,不能构造对象?
- 预期表现
这些表现我认为是冲突的,没有统一性。麻烦解答一下上面的问题哈