diff --git a/packages/uni-template-compiler/__tests__/compiler-extra.spec.js b/packages/uni-template-compiler/__tests__/compiler-extra.spec.js
index 3533daee0048cb9668ab8f061a22554df99ae887..d8686cfd9efad09bf81428b5aa30bdf09337877c 100644
--- a/packages/uni-template-compiler/__tests__/compiler-extra.spec.js
+++ b/packages/uni-template-compiler/__tests__/compiler-extra.spec.js
@@ -737,6 +737,16 @@ describe('mp:compiler-extra', () => {
'',
'with(this){var l0=array();if(!_isMounted){e0=function($event,item){var _temp=arguments[arguments.length-1].currentTarget.dataset,_temp2=_temp.eventParams||_temp["event-params"],item=_temp2.item;var _temp,_temp2;return test(item)}}$mp.data=Object.assign({},{$root:{l0:l0}})}'
)
+ assertCodegen(
+ '{{item}}',
+ '{{item}}',
+ 'with(this){var l0=array();if(!_isMounted){e0=function($event,item){var _temp=arguments[arguments.length-1].currentTarget.dataset,_temp2=_temp.eventParams||_temp["event-params"],item=_temp2.item;var _temp,_temp2;return test(item)}}$mp.data=Object.assign({},{$root:{l0:l0}})}'
+ )
+ assertCodegen(
+ '{{get(item)}}',
+ '{{item.m0}}',
+ 'with(this){var l0=__map(array(),function(item,index){var $orig=__get_orig(item);var m0=get(item);return{$orig:$orig,m0:m0}});if(!_isMounted){e0=function($event,item){var _temp=arguments[arguments.length-1].currentTarget.dataset,_temp2=_temp.eventParams||_temp["event-params"],item=_temp2.item;var _temp,_temp2;return test(item)}}$mp.data=Object.assign({},{$root:{l0:l0}})}'
+ )
})
it('generate bool attr', () => {
assertCodegen(
diff --git a/packages/uni-template-compiler/lib/script/traverse/data/event.js b/packages/uni-template-compiler/lib/script/traverse/data/event.js
index c9b601cdf2f60100402898c46f007d574fc67b8e..2ec5b812d3e0ce1d8c05f556b640229788001b91 100644
--- a/packages/uni-template-compiler/lib/script/traverse/data/event.js
+++ b/packages/uni-template-compiler/lib/script/traverse/data/event.js
@@ -520,8 +520,7 @@ module.exports = function processEvent (paths, path, state, isComponent, tagName
ret.push(
t.objectProperty(
t.stringLiteral(ATTR_DATA_EVENT_PARAMS),
- // 直接使用对象格式微信小程序编译会报错
- t.stringLiteral(`{{({${params.join(',')}})}}`)
+ t.objectExpression(params.map(param => t.objectProperty(t.identifier(param), t.identifier(param), false, true)))
)
)
}