1***@163.com
1***@163.com
  • 发布:2021-11-20 09:13
  • 更新:2021-11-20 09:13
  • 阅读:317

【报Bug】3.2.9组件引用第三层,组件{{}}写法会报undefined。

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10

HBuilderX类型: 正式

HBuilderX版本号: 3.2.9

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: 华为mate30

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

<template>

<view class="cu-form-group">  
    <view style="width: 20px; height: 20px;">  
    </view>  
    <view class="title">77777{{title}}</view>  
    <view class="regions" @tap="showModal">  
        {{formType}}  
        {{formType !== 'query'?'请编辑':'请查看'}}  
        {{itemOption}}  
        batchResult{{batchResult}}  
    </view>  
    <text class="cuIcon-right"></text>  
</view>  

</template>
<script>
import {
mapActions,
mapGetters
} from 'vuex'
export default {
model: {
prop: 'batchValue',
event: 'moduleBatchEvent'
},
props: {
//标题
title: {
type: String,
default: 'fffff'
},
//详情 query 编辑 edit
formType: {
type: String,
default: ''
},
//配置信息
itemOption: {
type: Object,
default () {
return {}
}
},
//联动ref,下拉
itemRef: {
type: String,
default: ''
},
//值
batchValue: { type: Array, default:()=>([])}
},
computed: {
...mapGetters({cusmoduleMap:'cusmoduleMap'})
},
watch:{
batchValue: {
handler: function(val) {
console.log('20210818===batchValue:', val)
this.batchResult = val
},
deep: true,
immediate: true
},
formType: {
handler: function(val) {
console.log('20210818===batchValue:', val)
//this.batchResult = val
},
deep: true,
immediate: true
}
},
data() {
return {
// batchResult: this.batchValue
batchResult:'sssss',
title:'33333'
}
},
methods: {
...mapActions([]),
showModal() {
const thiz = this
const params = encodeURIComponent(JSON.stringify({
title: this.title,
otherTableRelation: this.itemOption.otherTableRelation,
curFormType: this.itemOption.words?'detail':'edit',
alas: this.itemOption.alas,
batchRef: this.itemRef
}));
console.log('--itemOption===:', this.itemOption, thiz.batchValue)
uni.navigateTo({
url:/components/module-form/module-batchentry/MBatchentry?params=${params},
success(res) {
res.eventChannel.emit('acceptDataFromOpenerPage', { data: thiz.batchValue })
}
})
},
setBatchValue(res) {
this.$emit('moduleBatchEvent', res)
}
}
}
</script>
其中title为undefined

操作步骤:

page-子组件-孙子组件

预期结果:

显示数据不提示undefined

实际结果:

相关变量为undefined,但在watch中数据正常,放入到界面中{{}}引用即为undefinded

bug描述:

{{title}}
其中title的值写死,也会报undefined,将组件上移一层,不做任何修改,数据就正常了
目前是一个vue import 子组件vue-引用孙子组件,既出现问题,h5上正常,只在app上出现问题

2021-11-20 09:13 负责人:无 分享
已邀请:

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