HarmonyOS鸿蒙Next中外部调用getMC方法,传入org类型为SYMutableCenterResultsModel,没有走return org.jgmc,请看下什么原因

HarmonyOS鸿蒙Next中外部调用getMC方法,传入org类型为SYMutableCenterResultsModel,没有走return org.jgmc,请看下什么原因

API12 type UnionModel = SYMutableCenterResultsModel | SYDxListModel | SYWbSfListModel

getMC(index: number, org: UnionModel): string {
    // let ff:SYMutableCenterResultsModel = org 
    if (org instanceof SYMutableCenterResultsModel) {
        return org.jgmc;
    } else if (org instanceof SYDxListModel) {
        return org.dxlxmc;
    } else if (org instanceof SYWbSfListModel){
        return org.dwmc
    }
    return ''
}

外部调用getMC,org传入了一个SYMutableCenterResultsModel,但显示类型是object,没有走
return org.jgmc; 是什么原因?需要把object转成model吗,如何转?


更多关于HarmonyOS鸿蒙Next中外部调用getMC方法,传入org类型为SYMutableCenterResultsModel,没有走return org.jgmc,请看下什么原因的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复
@Entry
@Component
struct ModelPage {
    @State message: string = '点击';
    build() {
        RelativeContainer() {
            Text(this.message)
                .id('ModelPageHelloWorld')
                .fontSize(50)
                .fontWeight(FontWeight.Bold)
                .alignRules({
                    center: { anchor: '__container__', align: VerticalAlign.Center },
                    middle: { anchor: '__container__', align: HorizontalAlign.Center }
                })
                .onClick(() => {
                    let syModel: SYMutableCenterResultsModel = new SYMutableCenterResultsModel()
                    syModel.jgmc = 'jpmc'
                    this.message = getMC(1, syModel)
                })
        }
    .height('100%')
        .width('100%')
    }
}
type UnionModel = SYMutableCenterResultsModel | SYDxListModel | SYWbSfListModel
function getMC(index: number, org: UnionModel): string {
    if (org instanceof SYMutableCenterResultsModel) {
        return org.jgmc
    } else if (org instanceof SYDxListModel) {
        return org.dxlxmc;
    } else if (org instanceof SYWbSfListModel) {
        return org.dwmc
    }
    return ''
}
class SYMutableCenterResultsModel {
    jgmc: string = ''
}
class SYDxListModel {
    dxlxmc: string = ''
}
class SYWbSfListModel {
    dwmc: string = ''
}

更多关于HarmonyOS鸿蒙Next中外部调用getMC方法,传入org类型为SYMutableCenterResultsModel,没有走return org.jgmc,请看下什么原因的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,外部调用getMC方法时,传入的org类型为SYMutableCenterResultsModel,但没有走return org.jgmc,可能的原因如下:

  1. 类型不匹配SYMutableCenterResultsModel可能未正确实现或继承jgmc相关的接口或类,导致org.jgmc无法被识别或调用。

  2. 方法逻辑问题getMC方法内部可能存在条件判断或异常处理,导致return org.jgmc未被执行。

  3. 数据状态问题org对象的状态可能不符合getMC方法的预期,例如jgmc属性未初始化或为空,导致return org.jgmc未触发。

  4. 编译或运行时错误:可能存在编译或运行时的错误,导致getMC方法的执行路径未按预期进行。

  5. 框架或API限制:HarmonyOS的某些框架或API可能对getMC方法的行为进行了限制或修改,导致return org.jgmc未被调用。

请检查上述可能的原因,确保SYMutableCenterResultsModelgetMC方法的实现符合预期。

在HarmonyOS鸿蒙Next中,外部调用getMC方法时,如果传入的org类型为SYMutableCenterResultsModel,但没有执行return org.jgmc,可能原因如下:

  1. 类型不匹配org可能并非SYMutableCenterResultsModel类型,导致jgmc属性不存在。
  2. 空值检查orgorg.jgmc可能为null,导致未执行return语句。
  3. 逻辑错误:代码中可能存在条件判断,导致return语句未执行。
  4. 属性访问权限jgmc属性可能为私有,外部无法直接访问。

建议检查传入对象的类型、属性值及代码逻辑,确保条件满足且属性可访问。

回到顶部