z***@163.com
z***@163.com
  • 发布:2024-10-23 10:37
  • 更新:2025-01-08 16:23
  • 阅读:107

【报Bug】安卓原生插件扩展组件 Component Vue3环境下无法显示 Vue2显示正常

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10专业版21H1

HBuilderX类型: 正式

HBuilderX版本号: 4.29

手机系统: Android

手机系统版本号: Android 12

手机厂商: OPPO

手机机型: k7X PERMOO

页面类型: nvue

vue版本: vue3

打包方式: 离线

项目创建方式: HBuilderX

操作步骤:
<template>  
    <view class="content">  
        <test-component ref="testComponent" style="width:200rpx;height:100rpx"  tel="12305"></test-component>  
    </view>  
</template>  

<script setup>  
import { ref } from 'vue'  

const testComponent = ref(null)  
const handleClick = () => {  
    testComponent.value.clearTel()  
}  
</script>

插件代码

package com.example.test_component;  

import android.content.Context;  
import android.graphics.Color;  
import android.widget.TextView;  

import androidx.annotation.NonNull;  

import io.dcloud.feature.uniapp.UniSDKInstance;  
import io.dcloud.feature.uniapp.annotation.UniJSMethod;  
import io.dcloud.feature.uniapp.ui.action.AbsComponentData;  
import io.dcloud.feature.uniapp.ui.component.AbsVContainer;  
import io.dcloud.feature.uniapp.ui.component.UniComponent;  
import io.dcloud.feature.uniapp.ui.component.UniComponentProp;  

public class TestComponent extends UniComponent<TextView> {  
    public TestComponent(UniSDKInstance instance, AbsVContainer parent, AbsComponentData componentData) {  
        super(instance, parent, componentData);  
    }  

    // UniComponent的initComponentHostView回调函数。构建Component的view时会触发此回调函数。  
    @Override  
    protected TextView initComponentHostView(@NonNull Context context) {  
        TextView textView = new TextView(context);  
        textView.setTextSize(20);  
        textView.setTextColor(Color.BLACK);  
        return textView;  
    }  

    @UniComponentProp(name = "tel")  
    public void setTel(String telNumber) {  
        getHostView().setText("tel: " + telNumber);  
    }  

    @UniJSMethod  
    public void clearTel() {  
        getHostView().setText("");  
    }  

    @Override  
    public void onActivityResume() {  
        super.onActivityResume();  
    }  

    @Override  
    public void onActivityPause() {  
        super.onActivityPause();  
    }  

    @Override  
    public void onActivityDestroy() {  
        super.onActivityDestroy();  
    }  

}  

预期结果:

在vue3版本中正常显示

实际结果:

在vue2版本可以显示,vue3版本无法显示

bug描述:

安卓原生插件扩展组件 Component,vue3版本页面不显示,控制报warn,切换vue2版本正常显示

2024-10-23 10:37 负责人:无 分享
已邀请:
5***@qq.com

5***@qq.com

大神,我这边也遇到这个问题了,请问有解决方案吗?
添加了vite.config.js也不显示UI,但是事件可以调用

e***@qq.com

e***@qq.com

遇到同样问题。

要回复问题请先登录注册