快应用 IDE 配置 babel.config.js 的前世今生

快应用构建,是通过 hap-toolkit 来完成的,开发者可以通过 npm(yarn) 安装,基于命令行使用;也可以直接下载并使用快应用 IDE(内置了 hap-toolkit),来创建或构建您的应用。hap-toolkit 是基于 webpack 二次开发,babel.config.js 是 Babel 相关配置文件。在 hap-toolkit 迭代中,babel.config.js 对于开发者,经历从无到需、又从需到无的过程,本文即分享下这一路变迁的原因。

hap-toolkit 0.0.38

hap-toolkit 0.0.38 以前,所使用的 babel 还处于 6.x 版本,采用基于 .babelrc 充当配置文件。升级至 0.0.38 之后,项目下面的 .babelrc 文件变更为 babel.config.js 文件。babel.config.js 内容如(.babelrc 文件需要删除):

module.exports = function(api) {
  api.cache(true)
  return {
    presets: ['@babel/preset-env'],
    plugins: ['@babel/plugin-transform-modules-commonjs'],
    babelrcRoots: ['.', 'node_modules']
  }
}

hap-toolkit 0.7.0

前文已述,快应用 IDE 已内置了 hap-toolkit,所以在项目再安装 hap-toolkit 显得冗余。只使用快应用 IDE 或者全局 hap-toolkit 来操作即可。hap-toolkit 已包含了普通项目所需的依赖(包括基本的 babel 插件)。

但由于项目下 babel.config.js 的原因,会去寻找该文件所在路径的 node_modules,这就导致项目下也需要安装 babel 相关依赖。实际上现在大部分人都是用快应用 IDE 开发,项目下还安装 hap-toolkit 是为了其附属的 babel 依赖(仅安装 babel 也是可以编译的)。而项目下 babel.config.js 的意义在于:让开发者自定配置 babel 。但,站在快应用开发角度,开发者无需这么做,只用默认就好(实际上充分了解这些,也需要蛮大学习成本)。

于是,在 hap-toolkit 0.7.0 版本,移除项目下的 babel.config.js,默认情况下指向 hap-toolkit 内置的 babel.config.js 配置。这样以来项目下无需安装依赖,可以用全局 hap-toolkit或者快应用 IDE进行开发。

如果开发者习惯用命令行开发,本地没有找寻到依赖,会去寻找全局的依赖,所以对命令行不造成影响。

当然,如果开发者想自定义 babel 配置,依然在项目下创建 babel.config.js;需要注意的是,此时项目需要安装相关 babel 依赖。

如今(2021 年 9 月),hap-toolkit 已更新至 1.9.6-beta 版本,倘若,您有新建的快应用项目,是看不到 babel.config.js 的存在。倘若您的项目存在依旧,所用的快应用 IDE 3.4 版本以上,那么您的项目下,也无需安装 hap-toolki 依赖,也无需考虑配置 babel.config.js

猜您可能感兴趣的文章