首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Node/Babel :从babel节点或babel寄存器切换到babel-cli进行生产。

Node/Babel :从babel节点或babel寄存器切换到babel-cli进行生产。
EN

Stack Overflow用户
提问于 2016-04-28 23:05:30
回答 1查看 995关注 0票数 0

设置

Babel 6 (^6.0.0)、Node 5.4.0、Express 4.13.x、

babel-nodebabel-register都警告不要在babel.io网站上使用。从根本上说,像这样在飞行中进行转移对生产来说太慢了。

因此,我已经设置了使用babel-cli并运行预转换代码的情况。

问题是:

在开发过程中,重新转换所有代码并为每次更改重新启动程序都太慢了。我也看不出如何设置更改监视器(例如nodemon)来自动重新加载,因为我们现在运行的是被转移的代码,而不是源代码(发生更改的地方)。

问题:

我们如何建立一种简单的方法,在开发过程中,在快速转移和生产前转换之间切换?

我看到的大多数例子都是用于开发和生产的babel-nodebabel-register,所以我不确定在准备生产交付的代码库的同时,用babel进行快速开发的好策略是什么。

EN

回答 1

Stack Overflow用户

发布于 2016-04-29 05:30:48

注意许多非常流行的Node存储库仍在使用babel-nodebabel-register作为生产代码,这可能是因为,就在不久前,它们更容易用于设置一个快速重新加载的开发环境。但是,使用babel-cli 与使用一样简单,我建议将其用于开发和生产代码。

在评论的帮助下,我谈到了我的核心问题:

“在开发时,如何避免在使用babel-cli时缓慢地重新构建源代码?”

babel-nodebabel-register提供的即时转换不同,后者在开发过程中可以快速重新启动,babel-cli将代码预转到一个构建目的地,在那里您的代码可以以es5格式单独运行。在开发过程中,每次更改之间从源到构建的构建代码都很慢,因为在重新启动服务器之前,必须等待每个文件被转移。

这个解决方案很简单,您需要的是babel-cli的watch 方法,它可以直接查看所有源代码,并且只需要通过重新生成监视时更新的文件来快速更新构建代码。

很抱歉,当您阅读这个解决方案时,这个解决方案是非常明显的,但是babel文档只显示监视单个文件的代码,而且目前有大量的流行库专门用于查看整个文件夹中的更改,因此我假设开箱即用解决方案有点新,因此使用babel-cli显然比使用babel-nodebabel-register更好。

所以,您所要做的就是使用这样的npm脚本:

代码语言:javascript
复制
"watch-files" : "babel src --watch --out-dir build"

每当进行更新时,在build目录中重新启动服务器(除非设置了监视build文件夹的自动重新加载)。

归功于@FelixKling和@aray12 12评论,这些评论帮助我认识到,即使在开发过程中,babel-cli也是非常容易使用的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36926925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档