promise问题?

作者站长头像
站长
· 阅读数 10

我有一个vue写的标签

<img :src=getIcon(id)>
 const getIcon = async (appId: number) => {
     const db = await getInstance().queryByPrimaryKey(appId)
     return db ? db.url : ''
 }

其中,queryByPrimaryKey返回的是一个promise,所以这里用await等待promise的值,因为用到了await,所以外层又需要用async包裹,这样整体函数返回的又是一个promise,那么src属性实际上要的是返回的string值,而不是包裹着string的promise,我如何拿到string值?

回复
1个回答
avatar
test
2024-07-04

方法一:

<img :src="imgUrl">
 const getIcon = async (appId: number) => {
     const db = await getInstance().queryByPrimaryKey(appId)
     imgUrl = db ? db.url : ''
 }

方法二:计算属性

https://cn.vuejs.org/guide/essentials/computed.html
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容