midway icon indicating copy to clipboard operation
midway copied to clipboard

如何在faas-standard 项目中配置 build ,以采用babel编译

Open yoodu opened this issue 4 years ago • 10 comments

目标是在模块中采用 paths alias,由于tsconfig.json中的paths编译后无效,尝试了tspath、@ef-carbon/tspm等包,但是是项目编译输出目录与tsconfig.json 中的 "outDir": "dist", 不一致,导致无效。

打算采用babel进行处理,但是官方文档未找到 build 的自定义配置方法,请问如何解决?

yoodu avatar Oct 28 '20 01:10 yoodu

麻烦提供一个测试仓库,我们看一下这个问题 @yoodu

Lxxyx avatar Oct 28 '20 02:10 Lxxyx

麻烦提供一个测试仓库,我们看一下这个问题 @yoodu

其实就是怎么在 faas-standard 模板,配置使用tsconfig.json 的 paths 的问题

yoodu avatar Oct 28 '20 02:10 yoodu

@yoodu 这个 @/apis/env 的 imports 是在前端还是后端?

Lxxyx avatar Oct 28 '20 02:10 Lxxyx

@yoodu 这个 @/apis/env 的 imports 是在前端还是后端?

后端

yoodu avatar Oct 28 '20 04:10 yoodu

后端目前还不支持 path alias,这个我们也提上规划了,预计会内置到编译器中去实现该功能

Lxxyx avatar Oct 30 '20 02:10 Lxxyx

implement: https://github.com/midwayjs/mwcc/pull/4

Lxxyx avatar Nov 03 '20 08:11 Lxxyx

@yoodu 请问你们在dev模式下可以编译别名吗? 我将@midway/cli更新到最新版,也在node_modules中找到了处理alias path的源码。但是我在build的时候,查看编译后的代码,已经有正常解析alias path,但是在运行dev时,依旧提示模块找不到。

feiyueXH avatar Dec 16 '20 07:12 feiyueXH

@yoodu 请问你们在dev模式下可以编译别名吗? 我将@midway/cli更新到最新版,也在node_modules中找到了处理alias path的源码。但是我在build的时候,查看编译后的代码,已经有正常解析alias path,但是在运行dev时,依旧提示模块找不到。

目前 dev 模式下走的是 ts-node register,build 走的是 mwcc build,所以会出现开发期与构建行为不一致的问题。 开发期引用一个 https://www.npmjs.com/package/tsconfig-paths 的包吧。mwcc/register 已经在开发日程了

Lxxyx avatar Dec 16 '20 07:12 Lxxyx

问个新手问题:请问我该怎样配置dev执行参数

feiyueXH avatar Dec 16 '20 07:12 feiyueXH

问个新手问题:请问我该怎样配置dev执行参数

代码入口处显式引用。类似功能的还有这个包:https://www.npmjs.com/package/module-alias

Lxxyx avatar Dec 16 '20 07:12 Lxxyx