在鸿蒙应用开发中编写自定义构建函数时遇到了Error Message: Duplicate function implementation.错误,原因是在多个不同页面(.ets文件)中使用了相同名称的组件外自定义构建函数,导致预览器报错:

导致报错的代码如下,Page1和Page2两个页面都存在相同的代码:

//Page1和Page2两个页面都存在相同的组件外自定义构建函数
@Builder
function OutsideBuilder(from: string) {
  Text('Text in Outside Builder' + from).fontSize(22)
}

解决方法有两种,第一就是直接改名,虽然是不同页面但也不能重名;第二是在涉及到重名的每个页面里的自定义构建函数的function前增加export,如下图所示:

//组件外自定义构建函数(修复,增加export)
@Builder
export function OutsideBuilder(from: string) {
  Text('Text in Outside Builder' + from).fontSize(22)
}

重新刷新预览器,错误消失。

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐