使用webpack+babel开发npm模块
栏目: JavaScript · 发布时间: 6年前
内容简介:开发npm包,推荐使用ES6书写,再用babel进行转码,将ES6转成ES5,开发体验好,效率高。一个典型的node工程目录解构,bin目录下存放程序入口,libs目录下存放逻辑源码,使用webpack进行模块构建,使用babel进行ES6转码,使用npm script管理脚本。
开发npm包,推荐使用ES6书写,再用babel进行转码,将ES6转成ES5,开发体验好,效率高。
一个典型的node工程目录解构,bin目录下存放程序入口,libs目录下存放逻辑源码,使用webpack进行模块构建,使用babel进行ES6转码,使用npm script管理脚本。
创建node脚本入口
比如创建一个 cli.js 文件:
#!/uisr/bin/env node
console.log('your code goes here');
- 需要注意的是,第一行代码需要添加 片段标识符 (也叫hashbang),使用Node解释器执行该脚本。如果遇到权限问题,使用
sudo chmod +x file添加可执行权限 。 - 其次,在
package.json中,必须提供bin字段:"bin": "bin/cli"相当于指定npm的入口。
使用commander处理命令参数问题
gituhub的README上写的很详细, https://github.com/tj/commander.js/blob/master/Readme_zh-CN.md
调试过程
-
推荐使用
VS Code开发node应用,不仅仅代码提示、导航方面做的好,最好用的一点是可以直接F5启动调试模式,可以打断点一行一行的调试node程序,前提是设置好程序入口。对于更加复杂的应用, 可以通过配置.vscode/launch.json进行高级配置。 -
在项目根目录下通过
npm link可以将项目link到全局node_modules目录,这样就可以在任意目录下都可以使用自己的命令,英文名叫symbolic link,每次保存原文件会link也会立即生效, 不用再次运行npm link命令。
# 查看链接的位置 $ which your_command
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
离心力:互联网历史与数字化未来
[英] 乔尼·赖安(Johnny Ryan) / 段铁铮 / 译言·东西文库/电子工业出版社 / 2018-2-1 / 68.00元
★一部详实、严谨的互联网史著作; ★哈佛、斯坦福等高校学生必读书目; ★《互联网的未来》作者乔纳森·L. 齐特雷恩,《独立报》《爱尔兰时报》等知名作者和国外媒体联合推荐。 【内容简介】 虽然互联网从诞生至今,不过是五六十年,但我们已然有必要整理其丰富的历史。未来的数字世界不仅取决于我 们的设想,也取决于它的发展历程,以及互联网伟大先驱们的理想和信念。 本书作者乔尼· ......一起来看看 《离心力:互联网历史与数字化未来》 这本书的介绍吧!