diff --git a/packages/uni-template-compiler/__tests__/compiler-extra.spec.js b/packages/uni-template-compiler/__tests__/compiler-extra.spec.js index 4dcb81d258f4e7bd46794c2f57a59f7669151013..132c8fd062651d690d0749f431b6cb147e606e49 100644 --- a/packages/uni-template-compiler/__tests__/compiler-extra.spec.js +++ b/packages/uni-template-compiler/__tests__/compiler-extra.spec.js @@ -545,6 +545,11 @@ describe('mp:compiler-extra', () => { '4', '4' ) + assertCodegen( + '', + '', + 'with(this){var l0=__map(array,function(item,index){var $orig=__get_orig(item);var m0=test(index);return{$orig:$orig,m0:m0}});$mp.data=Object.assign({},{$root:{l0:l0}})}' + ) }) it('generate object property on custom component', () => { diff --git a/packages/uni-template-compiler/lib/script/traverse/data/model.js b/packages/uni-template-compiler/lib/script/traverse/data/model.js index d5172ed41e240cb660e2c6b28f57f24174efaa6d..37097c68bdd5207ee1fb4ad1882a4af7a9e5e85a 100644 --- a/packages/uni-template-compiler/lib/script/traverse/data/model.js +++ b/packages/uni-template-compiler/lib/script/traverse/data/model.js @@ -10,7 +10,9 @@ module.exports = function processRef (paths, path, state) { const callbackProperty = modelPath.node.value.properties.find(property => { return property.key.name === 'callback' }) - + const valueProperty = modelPath.node.value.properties.find( + property => property.key.name === 'value' + ) const exprProperty = modelPath.node.value.properties.find( property => property.key.name === 'expression' ) @@ -63,9 +65,9 @@ module.exports = function processRef (paths, path, state) { return [ // attrs:{value:value} t.objectProperty( t.stringLiteral(process.env.UNI_USING_VUE3 ? 'modelValue' : 'value'), - t.identifier(prop) + valueProperty.value ) ] } return [] -} +}