发布网友 发布时间:2022-04-28 11:28
共6个回答
懂视网 时间:2022-05-15 04:32
这次给大家带来怎样使用Nodejs 发布npm包并制作成命令行工具,使用Nodejs 发布npm包并制作成命令行工具的注意事项有哪些,下面就是实战案例,一起来看一下。<span style="font-family:Arial, Helvetica, sans-serif;background-color:rgb(255,255,255);">近日当我在使用npm上已经存在的一个包时,发现它有bug;于是决定自己实现这个功能,自己写一个npm包。</span>
下面我记录一下自己的实现过程。
1. npm init
选择一个文件夹,然后用命令行cd进去,然后执行npm init,这时会生成一长串表单,根据自己的实际情况填写内容
name:填写你这个包的名字,默认是你这个文件夹的名字。不过这里要着重说一下,最好先去npm上找一下有没有同名的包。最好的测试方式就是,在命令行里面输入npm install 你要取的名字,如果报错,那么很好,npm上没有跟你同名的包,你可以放心大胆地把包发布出去。如果成功下载下来了。。。那么很不幸,改名字吧。。。
version:你这个包的版本,默认是1.0.0
description:其实我也不知道是什么,按回车就好了。。。,这个用一句话描述你的包是干嘛用的
entry point:入口文件,默认是Index.js,你也可以自己填写你自己的文件名
test command:测试命令,这个直接回车就好了,因为目前还不需要这个。
git repository:这个是git仓库地址,如果你的包是先放到github上或者其他git仓库里,这时候你的文件夹里面会存在一个隐藏的.git目录,npm会读到这个目录作为这一项的默认值。如果没有的话,直接回车继续。
keyword:这个是一个重点,这个关系到有多少人会搜到你的npm包。尽量使用贴切的关键字作为这个包的索引。我这个包嘛,第一是在express下工作的,然后又是一个插件plugin,然后又是一个注册路由route用的,而这个路由又是基于文件目录dir,所以很好就得出我的包的索引关键字。
author:写你的账号或者你的github账号吧
license:这个直接回车,开源文件来着。。。
然后它就会问你Are you ok?
回车Ok!
然后我们回到我们的文件目录里面去看一看,发现多出来一个package.json文件
然后,在目录下新建一个index.js文件,或者你刚才修改了那个entry point的值,那么你这个文件名也跟着改为那个值。
我的npm工程目录结构就是这样的,注意其中的bin文件夹是我为了制作命令行工具才生成的,后面会讲到怎么生成命令行工具;当然,如果那不想生成命令行工具,这个文件夹就不需要了。
因为我把封装好的代码都扔在lib里面,所以,index.js里面也就一句话:
module.exports=require('./lib')
然后,最重要的,写好README.md,一个给大家描述你的包的markdown文件,如果大家都不知道你的代码是做什么的,会有人去下载你的代码吗?哦,对了,最好写英文。
2. npm publish
写完自己的npm包,测试运行没问题后就可以发布到npm上
首先得注册个npm帐号
用npm命令登陆一下
然后,在你的目录下使用npm publish
注意:一般情况下,一旦你要修改你已经发布后的代码,然后又要执行发布操作,务必到package.json里面,把version改一下,比如从1.0.0改为1.0.1,然后在执行npm publish,这样就可以成功发布了。
3. 生成命令行工具
在使用 Nodejs 过程中,有很多包都支持全局安装,提供一个命令,然后在命令行我们就可以完成一些任务。有时候我们也需要开发这样的命令工具。在Node.js 中发现弄个命令行工具特别轻松。我使用的是commander包来生成命令行工具
$ npm install commander
然后cd到bin目录下,新建一个.js文件(名字自取),编写代码,在js文件顶部加上#!/usr/bin/env node
例如我的geAsar.js:
#!/usr/bin/env node var asar = require('../lib/geAsar') var program = require('commander'); program.version('v' + require('../package.json').version) .description('Manipulate asar archive files') program.command('pack <dir> <output>') .alias('p') .description('create asar archive') .action(function (dirpath, output) { asar.geAsar(dirpath,output); console.log(output+"文件成功生成"); }) program.parse(process.argv) if (program.args.length === 0) { program.help() }
然后还需在package.json中添加
"bin": { "geAsar": "./bin/geAsar.js" },
运行 node bin/geAsar.js 会显示当前文件夹下的所以文件和文件夹名。这个玩意儿真的跑起来了.
全局运行命令调试
install
如果在项目目录下运行没有问题,可以将当前目录模块安装到全局,也可以采用此方法来更新你的命令行工具
sudo npm install . -g
link
或者目录输入 npm link 会自动添加全局的 symbolic link ,然后就可以使用自己的命令了。 (我用的是这个)
相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
怎样使用angularjs中http服务器
vue中keep-alive使用方法详解
vue项目中type=”file“ change事件只执行一次怎样处理
热心网友 时间:2022-05-15 01:40
根据不同的情况选择N挡的使用,具体如下:
1、熄火停车时
在停车熄火前,脚刹停稳,挂入N档,拉手刹,松脚刹踏板,推入P挡。这样操作的好处是,任何时候停车,变速箱都不会受力,特别时路面有坡度时,可以避免变速箱受到坡度的惯性滑动力的作用,将这些作用力都通过手刹来作用而不是变速箱,对保护变速箱有好处。
2、红灯和“长时间”红灯时
红灯绿灯间隔超过30秒以上,就视为长时间等待,在30秒以内等待红灯可以D挡踩刹车;因为在D挡踩刹车时,变速箱实有动力传动的情况下受刹车作用停止的,实际上变速箱是在工况状态,这种作用力是多一些燃油消耗的。
在红灯时如果看到超过30秒间隔时,就果断挂空挡拉手刹,就不要在D挡等候。但要注意的是坚决不可以挂P挡等红灯,当变速箱在P挡状态下时,变速箱有锁止功能的,一旦受到外力冲击,比如被追尾,对变速箱会造成损害。
3、如遇故障需要近距离拖车时
路上遇到一些情况打不着火了需要拖车,但是距离又不远,需要其他车辆帮忙拖一下,就可以将挡位挂入N挡,再有其他牵引车来拖动,在拖车或者是推动时要记得将档位挂入N挡。不可以在其他档位来操作拖车或推动。
扩展资料
自动挡汽车的驾驶误区
1、长时间停车时仍挂D挡
装备自动变速器的车辆在堵车时,一些车主常常只踩下制动踏板,换挡杆却保持在D挡(行车挡),并不换挡。若时间很短,这样做是允许的。但若停车时间长最好换入N挡(空挡),并拉紧驻车制动。
因为换挡杆在D挡时,自动变速器汽车一般有微弱的前移,若长时间踩住制动踏板,等于强行制止这种前移,使得变速器油温升高,油液容易变质,尤其在空调系统工作时,发动机怠速较高的情况下更为不利。
2、加大油门就可换到高速挡
因为换挡操作应是“收油门提前升挡,踩油门提前降挡”。也就是在D挡起步后,保持节气门开度5%,加速到40km/h,快松油门,能提高到一个挡位,再加速到75km/h,松油门又能提高一个挡位。
降低时按行车车速,稍踩油门,即回到低挡。但必须注意,油门不能踩到底。否则,会强行挂入低速挡,可能造成变速器损坏。
参考资料来源:人民网—自动挡车红灯停车应挂哪挡?N挡会更省油
参考资料来源:人民网—自动挡停车挂N挡再熄火?新手司机别被误导了
参考资料来源:人民网—注意规避自动挡汽车 常见的5大使用误区
热心网友 时间:2022-05-15 02:58
N档+手刹和D档+刹车 在等灯时没什么区别 ,只是踩刹车时间厂了脚酸。跑高速熄火前停2分钟是不对的,第一批涡轮增压A6和帕萨特B5时候容易出现涡轮增压出故障的问题。热心网友 时间:2022-05-15 04:32
N档+手刹和D档+刹车 在等灯时没什么区别 只是踩刹车时间厂了脚酸,我很少用自动驻车。热心网友 时间:2022-05-15 06:40
这个是开车习惯的问题,一般等红灯确实不用N档,就D档就行,踩脚刹。至于长时间高速,要运行几分钟,这个也是没有必要的,没有道理啊。热心网友 时间:2022-05-15 09:05
时间短的红的,完全可以D档踩住刹车。时间长一般方P档,脚可以解放...