小程序扩展运算符 ... ,用来将一个对象展开。
以下示例:
1 <template is="objectCombine" data="{{...obj1, ...obj2, e: 5}}"></template>
1 Page({
2 data: {
3 obj1: {
4 a: 1,
5 b: 2
6 },
7 obj2: {
8 c: 3,
9 d: 4
10 }
11 }
12 })
等同于:<template is="objectCombine" data="{{a: 1, b: 2, c: 3,d: 4, e: 5}}"></template>
对象的 key 和 value 相同,也可以间接地表达:
1 <template is="objectCombine" data="{{foo, bar}}"></template>
1 Page({
2 data: {
3 foo: 'my-foo',
4 bar: 'my-bar'
5 }
6 })
等同于: <template is="objectCombine" data="{{foo: 'my-foo', bar: 'my-bar'}}"></template>
存在变量名相同的情况,后边的会覆盖前面:
1 <template is="objectCombine" data="{{...obj1, ...obj2, a: 5, c: 6}}"></template>
1 Page({
2 data: {
3 obj1: {
4 a: 1,
5 b: 2
6 },
7 obj2: {
8 b: 3,
9 c: 4
10 },
11 a: 5
12 }
13 })
等同于:<template is="objectCombine" data="{{a:5, b:3,c: 6}}"></template>
更多专业前端知识,请上 【猿2048】www.mk2048.com