鸿蒙开发:基于node脚本实现组件化运行

前言

本项目API>=13

上篇文章,我们通过DevEco Studio插件实现了单一模块运行,相对来说,还是非常的便捷,毕竟是可视化操作,不过,插件有一个潜在的问题需要告知,那就是单一模块如果没有默认的页面,在运行时是会报错的,也就是每个模块下需要有一个Index.ets页面做为模块的主入口,不过在创建模块的时候,默认都会创建这个页面,大家不要删除即可,当然了,后续也会针对插件做一层优化,没有这个默认页面默认去创建一个。

今天的内容同样也是和组件化运行相关的,只不过换了一种方式,那就是通过node脚本来实现。

node脚本的方式和IDE插件的方式功能是一模一样的,只是在实现上不同,使用node脚本无须再安装IDE插件,只需要把脚本放在项目中即可。

node脚本配置

脚本地址如下:

abnerming888.github.io/vip/load/st...

大家可以在自己项目根目录下新建同名文件,把内容复制进去即可,如下图所示:

脚本可分为四块,node start 为前两块,为固定模式,start为你的脚步文件名字,如果你保存的不是start名字,那么就改为你的名字即可;第三块是自己想要切换的组件名字,也就是你想让那个模块运行,第四块是默认的页面路径,这个可以不传,默认是pages/Index,执行案例如下:

txt 复制代码
node start 模块名字

鸿蒙开发是需要node环境的,一般不需要我们在额外配置,在下载DevEco Studio的时候会自行配置,为了验证node环境是否存在,我们可以在DevEco Studio底部终端,输入node -v,如果能正确显示出版本号,则有node环境。

如果没有node环境,我是说如果啊,有两种方式可以解决,第一种是大家可以从node官网下载,自行配置环境变量,第二种,就是使用DevEco Studio中自带的node环境。

DevEco Studio中自带的node环境,我们可以点击顶部的Run菜单按钮,点击Edit Configurations...,如下图所示:

点击左侧的Hvigor,随便选择一个,右侧的Node interpreter中就是IDE自带的node环境:

MAC电脑使用

如果你的电脑是MAC,复制完之后,需要在后面加一个"/node",如下所示:

txt 复制代码
/Applications/DevEco-Studio.app/Contents/tools/node/bin/node

可以发现一样可以获取到node版本,只不过是全路径而已。

Windows电脑使用

如果你的电脑是Windows系统,复制出来需要双引号,才能正确执行命令,并且后缀加上"\node.exe",如下所示:

txt 复制代码
"F:\soft\harmonyIDE\devecostudio-windows-5.0.11.100\config\DevEco Studio\tools\node\node.exe"

执行命令的时候,直接复制上面的node路径即可,需要注意的是,选择Command Prompt这个选项。

当然了,无论是Windows还是Mac,如果没有node环境,还是希望你能进行全局的环境变量配置,方便命令的执行。

node脚本使用

使用就非常的简单了,大家只需要在底部的终端中,执行你想要运行的模块命令即可,比如,我想让home模块进行运行:

执行完命令之后,为了防止错误发生,需要进行同步和刷新项目,如下图所示:

然后选择home模块,点击运行即可:

如果设备上已经运行了同等包名的应用,需要卸载原有的,再进行安装,只需要点击控制台的蓝色即可:

以上执行完之后,如果你的模块,没有设置默认的启动Launch,需要手动配置一次,仅第一次配置,如果已经配置了,则会直接运行到设备上。

点击运行的模块,选择编辑配置:

找到Launch,选择Default Ability:

相关总结

node脚本的方式,需要手动的在终端执行命令,进行切换模块运行,相对于上篇的IDE插件,在效率上有所降低,不过熟练之后,问题不大,目前已经提供了两种方式,大家可以选择自己喜欢的方式。

本文标签:鸿蒙开发工具/DevEco Studio

相关推荐
Doro再努力5 小时前
【Linux操作系统10】Makefile深度解析:从依赖推导到有效编译
android·linux·运维·服务器·编辑器·vim
Daniel李华6 小时前
echarts使用案例
android·javascript·echarts
做人不要太理性7 小时前
CANN Runtime 运行时组件深度解析:任务调度机制、存储管理策略与维测体系构建逻辑
android·运维·魔珐星云
lbb 小魔仙7 小时前
【HarmonyOS实战】OpenHarmony + RN:自定义 useValidator 表单验证
华为·harmonyos
我命由我123457 小时前
Android 广播 - 静态注册与动态注册对广播接收器实例创建的影响
android·java·开发语言·java-ee·android studio·android-studio·android runtime
朗迹 - 张伟7 小时前
Tauri2 导出 Android 详细教程
android
lpruoyu8 小时前
【Android第一行代码学习笔记】Android架构_四大组件_权限_持久化_通知_异步_服务
android·笔记·学习
一起养小猫9 小时前
Flutter for OpenHarmony 实战:扫雷游戏完整开发指南
flutter·harmonyos
独自破碎E9 小时前
【BISHI15】小红的夹吃棋
android·java·开发语言
小哥Mark11 小时前
Flutter开发鸿蒙年味 + 实用实战应用|绿色烟花:电子烟花 + 手持烟花
flutter·华为·harmonyos