更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 应用开发 > 关于通过鸿蒙工具DevEco新建一个js/ts的module的另类方案

关于通过鸿蒙工具DevEco新建一个js/ts的module的另类方案

更新时间:2022-01-23 15:04:07浏览次数:987+次

以下将介绍关于通过鸿蒙开发工具DevEco Studio新建一个js/ts的module的另类解决方案。

问题细述

目前从DevEco的new module菜单里,除了ability lib,java lib,有没有可以创建一个纯js/ts的lib module。

当前尝试用HarmonyOS library,但一直停在loading SDK Data and Stats的界面。也尝试从demo工程里copy一个module。抽换里面的java,成js(找到的都是java的lib),但DevEco似乎无法识别里面的js代码,只能盲写js,不方便。不知道有没有纯js的lib参考demo例子?

网友给出的参考:添加/删除Module

在工程中添加Module和删除Module的内容参考如下截图:

\

解答

从以上文档里没有如何建立纯ts/js库的方法,不过尝试搞了一个复合体,倒是可以解决该问题,分享如下:

1、建立一个module是java-library的。

2、修改build.gradle,加入ohos的选项,类似如下:

apply plugin: 'java-library'

ohos {

    compileSdkVersion 7

    defaultConfig {

        compatibleSdkVersion 5

    }

}

3、然后抄一个其他工程的config.json,因为当前devEco会自动侦测src/main/config.json,且此json中必须有支持ets的js对象,类似如下:

"js": [

  {

    "mode": {

      "syntax": "ets",

      "type": "pageAbility"

    },

......

以上步骤完成后,devEco会执行build.gradle以为这个lib是支持js的执行sdk版本,且有支持ets的config.json。

说明

至于实际的代码不一定放到src/main下面(至少现在的版本)都可以被词法解析了。

至于其他类型的lib(也许也可以作为容器),但各种build.gradle报错,一路tang'shui太麻烦了。