敏二
敏二
  • 发布:2020-09-30 16:59
  • 更新:2020-09-30 16:59
  • 阅读:722

事件绑定的回调函数参数使用扩展运算时,编译为微信小程序失败

分类:uni-app

【dcloud版本】2.0.0-28920200923001
【复现步骤】
步骤1:pages/index/index.vue 如下代码:

<template>  
    <view class="content">  
            <text class="title" @click="handleClick({...myParams})">点我</text>  
    </view>  
</template>  

<script>  
    export default {  
        data() {  
            return {  
                myParams: {  
                    name: 'Mac'  
                }  
            }  
        },  
        onLoad() {  

        },  
        methods: {  
            handleClick(params) {  
                console.log('handleClick',params)  
            }  
        }  
    }  
</script>

步骤2:执行dev:mp-weixin。控制台输出如下:

> clean-uniapp@0.1.0 dev:mp-weixin E:\clean-uniapp  
> cross-env NODE_ENV=development UNI_PLATFORM=mp-weixin vue-cli-service uni-build --watch  

请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。若要正式发布,请点击发行菜单或使  
用cli发布命令进行发布  
小程序各家浏览器内核及自定义组件实现机制存在差异,可能存在样式布局兼容问题,参考:https://uniapp.dcloud.io/matter?id=mp  

-  开始编译当前项目至 mp-weixin 平台...  
uni-app 有新版本发布,请执行 `npm update` 更新,更新日志详见:https://update.dcloud.net.cn/hbuilderx/changelog/2.8.13.20200927.html  
\  开始编译当前项目至 mp-weixin 平台...TypeError: Cannot read property 'name' of undefined  
    at element.properties.forEach.property (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\event.js:155:42)  
    at Array.forEach (<anonymous>)  
    at argsArrayExpr.elements.argsArrayExpr.elements.map (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\event.js:152:28)  
    at Array.map (<anonymous>)  
    at parseMethod (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\event.js:119:53)  
    at methods.forEach.method (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\event.js:410:7)  
    at Array.forEach (<anonymous>)  
    at _processEvent (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\event.js:409:13)    at processEvent (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\event.js:456:5)  
    at processes.forEach.process (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\index.js:34:5)  
    at Array.forEach (<anonymous>)  
    at traverseData (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\data\index.js:33:13)  
    at Object.CallExpression (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\script\traverse\visitor.js:179:58)  
    at NodePath._call (E:\clean-uniapp\node_modules\@babel\traverse\lib\path\context.js:55:20)  
    at NodePath.call (E:\clean-uniapp\node_modules\@babel\traverse\lib\path\context.js:42:17)  
    at NodePath.visit (E:\clean-uniapp\node_modules\@babel\traverse\lib\path\context.js:92:31)  
\  开始编译当前项目至 mp-weixin 平台...  

 ERROR  Failed to compile with 1 errors                                                                           4:54:14 PM  
 error  in ./src/pages/index/index.vue?vue&type=template&id=57280228&  

Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js):  
Error: Compile failed at pages/index/index.vue  
    at compile (E:\clean-uniapp\node_modules\@dcloudio\uni-template-compiler\lib\index.js:140:13)  
    at actuallyCompile (E:\clean-uniapp\node_modules\@dcloudio\vue-cli-plugin-uni\packages\@vue\component-compiler-utils\dist\compileTemplate.js:70:96)  
    at compileTemplate (E:\clean-uniapp\node_modules\@dcloudio\vue-cli-plugin-uni\packages\@vue\component-compiler-utils\dist\compileTemplate.js:31:16)  
    at Object.module.exports (E:\clean-uniapp\node_modules\@dcloudio\vue-cli-plugin-uni\packages\vue-loader\lib\loaders\templateLoader.js:46:20)  

 @ ./src/pages/index/index.vue?vue&type=template&id=57280228& 1:0-624 1:0-624  
 @ ./src/pages/index/index.vue  
 @ ./src/main.js?{"page":"pages%2Findex%2Findex"}

步骤3: 删除template中的扩展运算{...myParams}后编译正常

2020-09-30 16:59 负责人:无 分享
已邀请:

该问题目前已经被锁定, 无法添加新回复