HarmonyOS鸿蒙Next中基于TS创建的Hvigor项目插件如何设置执行顺序
HarmonyOS鸿蒙Next中基于TS创建的Hvigor项目插件如何设置执行顺序 基于TS的Hvigor插件项目,如何依赖某个task执行完后再执行本任务。目前未设置执行顺序,解析自定义注解时。拿到的都是常量名而不是常量对应的值。我推测可以通过调整hvigor插件顺序解决此问题,有熟悉的朋友还希望能帮我解答一下,感谢
import { FROM_IP_CONFIG } from "../../app/AppConstant";
@LoadingPer({ pageUrl: FROM_IP_CONFIG, firstPer: 'module', secondPer: 'component' })
@ComponentV2
export struct IpConfigPage {
....
}
在插件中获取pageUrl的值时,获取到的是字符串 “FROM_IP_CONFIG”,而不是这个常量对应的值
更多关于HarmonyOS鸿蒙Next中基于TS创建的Hvigor项目插件如何设置执行顺序的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,基于TS创建的Hvigor项目插件执行顺序通过hvigor配置文件的plugin配置块管理。使用before和after属性定义插件间的依赖关系,明确执行先后顺序。例如,在hvigorfile.ts中配置pluginA在pluginB之前执行,可设置pluginA.after('pluginB')。此机制确保构建任务按预设流程顺序执行。
更多关于HarmonyOS鸿蒙Next中基于TS创建的Hvigor项目插件如何设置执行顺序的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS Next的Hvigor项目中,可以通过dependsOn()方法设置任务依赖关系来确保执行顺序。针对您遇到的常量解析问题,需要在编译任务完成后执行注解处理任务。
具体实现方式:
- 在插件配置中使用
project.task()创建任务时,通过.dependsOn()指定前置任务:
project.task('annotationProcessing', () => {
// 您的注解处理逻辑
}).dependsOn('compileTask')
- 如果处理TypeScript注解,应该依赖TypeScript编译任务:
.dependsOn('compileDebugTypeScript')
- 对于自定义构建流程,确保注解处理任务在代码生成和资源处理之后执行:
.dependsOn('generateCode', 'processResources')
这样能保证在注解处理时,TypeScript常量已经被正确编译和替换,您获取到的将是实际的常量值而非字符串名称。执行顺序的正确设置可以解决注解解析时获取常量名而非值的问题。

