HarmonyOS 用calc设置宽度.width(calc(100% -30)),根据需要设置的margin做动态赋值

calc使用报错:

@Builder  
choiceLoginDeviceItem(item:LoginDeviceModel): void {  
    Row() {  
      if (this.isSelect) {  
        Image(item.selectIcon)  
          .height(15)  
          .margin({right:5})  
      }  
      LoginDeviceItem({  
        loginDevice:item,  
        logOut:false  
      })  
        .width(calc(100% - 30 - (this.isSelect ? 20 : 0)))  
    }  
    .margin({  
      left:15,  
      right:15,  
      bottom:10  
    })  
    .onClick(()=>{  
      this.singleChoiceSelectStateModify(item)  
    })  
  }
HarmonyOS
2024-10-10 10:53:32
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

需要使用引号引起来:

.width(calc(100% - 30 - (this.isSelect ? 20 : 0)))

替换成:

.width(`calc(100% - ${30 + (this.isSelect ? 20 : 0)}vp )`)
分享
微博
QQ
微信
回复
2024-10-10 16:48:12
相关问题
HarmonyOS 宽度100% margin左右不生效
84浏览 • 1回复 待解决
HarmonyOS 子控件设置宽度100%问题
28浏览 • 1回复 待解决
能否使用类似css里calc方法
397浏览 • 1回复 待解决
list-item 根据boolean属性 动态设置class
4865浏览 • 1回复 待解决
HarmonyOS text组件不设置width
29浏览 • 1回复 待解决
怎么设置元素最大宽度最小宽度
440浏览 • 1回复 待解决