详细问题描述
(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)
[内容]
uniApp自定义编译模式,input封装为组件后,微信小程序真机,input获取焦点后点击页面其他元素,@input事件会在父页面触发,然后报错
重现步骤
[步骤] input获取焦点,点击页面其他元素
[结果]子组件中定义的@input事件会在父页面触发报找不到方法
[期望]修复此bug
[如果语言难以表述清晰,拍一个视频或截图,有图有真相]
IDE运行环境说明
[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]HBuilder1.9.8
[windows版本号]win7
uni-app运行环境说明
[运行端是h5或app或某个小程序?]微信小程序
[运行端版本号]微信版本7.0.4 基础库2.7.0
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]HBuilder1.9.8
[编译模式是老模板模式还是新的自定义组件模式?]自定义组件模式
App运行环境说明
[Android版本号]安卓9.0
[手机型号]小米6
附件
[代码片段]
子组件
<template>
<view>
<input style="width:100%;border:1px solid #ddd;border-radius:15upx;" @input="inputChange" />
</view>
</template>
<script>
export default {
data() {
return {
};
},
methods:{
inputChange(e) {
console.log(e);
}
}
}
</script>
父页面
<template>
<view class="content">
<image class="logo" src="/static/logo.png"></image>
<view>
<test-input></test-input>
<text class="title">{{title}}</text>
</view>
</view>
</template>
<script>
import testInput from "@/components/TestInput.vue";
export default {
components:{
testInput
},
data() {
return {
title: 'Hello'
}
},
}
</script>