位置: 编程技术 - 正文

详解如何实现一个简单的Node.js脚手架(如何实现仁)

编辑:rootadmin

推荐整理分享详解如何实现一个简单的Node.js脚手架(如何实现仁),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何实现1px,怎样才能实现仁呢,如何才能够实现“仁”,如何实现1px,如何实现是什么意思,如何实现1px,如何实现仁300字,如何实现仁300字,内容如对您有帮助,希望把文章链接给更多的朋友!

原因

在工作中,需要开发一个脚手架,用于给相关用户提供相关的开发便利性。

适合人群

对前端、Node操作有一定的了解,同时向了解脚手架开发过程或者需要自己实现一个脚手架的开发者。

目标

开发一个简单的脚手架,能够提供给用户进行安装。 能够输出相关提示。 对用户文件进行读写操作。 在脚手架中使用Shell脚本。

步骤

开发脚手架

脚手架的开发最开始过程与普通的前端项目相同,需要一个入口文件command.js和配置文件package.json。

与其他配置文件不同的是,需要在package.json文件中加上一下一项:

在配置文件中增加了此项后,只需要在配置文件根目录下执行npm link命令,即可使用cm-cli --help命令来查看加载的cm-cli脚手架。

如果你发布了你的脚手架,那么在其他用户使用命令npm install -g cm-cli之后,便可以在全局下使用你的脚手架了。

对用户进行提示

在对注释和命令进行提示中,我们需要使用到commander包,使用npm install commander即可进行安装。(如果NPM版本低于5,则需要添加--save参数保证更新package.json配置文件)。

commander是一个提供用户命令行输入和参数解析的强大功能。有需要的可以阅读相关的库文档。在这里我介绍两个用的最多的方法。

option

能够初始化自定义的参数对象,设置关键字和描述,同时还可以设置读取用户输入的参数。具体用法如下:

具体展示如下:

详解如何实现一个简单的Node.js脚手架(如何实现仁)

command

该方法能够在命令行增加一个命令。用户在执行此命令后,能够执行回调中的逻辑。具体用法如下:

具体展示效果如下:

对用户文件进行读写操作

通过上面的步骤,我们已经能够完成一个简单的脚手架了。下面,我们需要读取用户配置,同时为用户生成一些模板文件。

读取文件

现在,我们需要读取用户的cm-cli.json配置文件来进行一些配置。

我们可以使用Node.js的fs文件模块来对文件进度读操作,由于此处没有太多难点,因此略去。

写入文件模板

我们提前将模板文件存储在CDN上,再根据本地读取到的相关脚手架配置文件来进行模板的下载。

注:脚手架中读取的路径为使用者使用时当前路径,因此没有办法将模板文件存储在脚手架中进行读取。

我们可以使用诸如request这种库来帮助我们进行文件下载,简化操作步骤。执行npm install request`即可进行安装。

注:在文件写入时建议先判断文件是否存在,再进行覆盖。

使用Shell脚本

与Node.js提供的API函数来看,有些人更加倾向于使用Shell脚本来进行文件操作。幸运的是,我们也可以在我们的脚手架中引入node-cmd来启用对Shell脚本的支持。执行npm install node-cmd即可进行安装。

具体示例如下:

我们可以快速的使用Shell脚本来进行文件夹的创建和文件模板的下载。

总结

脚手架想要在终端能够快速执行,可以在package.json配置文件中增加相关字段。

脚手架需要能够读取相关终端输入,可以使用commander库来快速开发。

脚手架需要能够执行Shell脚本,可以使用node-cmd库来快速实现需求。

标签: 如何实现仁

本文链接地址:https://www.jiuchutong.com/biancheng/370623.html 转载请保留说明!

上一篇:windows下更新npm和node的方法(windows升级node版本)

下一篇:node.js下LDAP查询实例分享(nodejs获取客户端ip地址)

  • 发票名称开错了但是税号没错怎么办
  • 进口增值税的税率
  • 财政的税收
  • 收到以前年度银行手续费发票
  • 股东如何收回投资
  • 进口消费税应该记到什么科目
  • 固定资产清理的金额怎么算
  • 劳保如何入账
  • 房地产项目管理三大核心
  • 企业建设项目审批流程
  • 长期挂账应收账款怎么调
  • 公司土地和厂房可以按折价卖结股东权益吗
  • 预存送返利的帐户怎么查
  • 修理费要开税控清单吗
  • 工程款开票备注栏
  • 发票勾选操作失败怎么回事
  • 案例分析:实物抵债的涉税问题
  • 补偿贸易具体方式
  • 投资收益科目应用
  • 怎么查企业的增值税纳税额
  • 会计新手入门
  • 企业利息收入如何做分录
  • 1697510614
  • 建账时的库存怎么做账
  • 财务期初期末
  • 发生股权转让时怎么处理
  • 攀岗的企业性质有哪些
  • 安装win7教程
  • 怎么激活win10专业版
  • 安全人员发现重大隐患
  • hppusg.exe是什么进程
  • php数组函数输出《咏雪》里有多少"片"字
  • config.cfg是什么文件
  • 开发商自用房产出售成为二手房土地成本
  • 土建工程付款方式比例
  • 房地产企业利润
  • vue接入高德地图
  • web应用技术是什么
  • 发票中食品属于哪一类
  • 固定资产盘盈税务处理政策
  • ps如何使用套锁工具剪裁图片
  • install PostgreSQL Community Ubuntu Documentation
  • 企业所得税报表模板
  • 小规模发票跨月冲红怎么做账
  • java数组合并变字符串
  • dedecms织梦不同栏目导航显示不同样式的方法
  • 电子承兑汇票贴现怎么做账
  • 原材料发生退货怎么处理
  • 清洁费用属于哪个会计科目
  • 设备转固的前提条件
  • 增值税专用发票怎么开
  • 募捐建议
  • 信用卡刷卡手续费是谁收取的
  • 委托加工业务的财务职责
  • 金蝶迷你版为什么打不开
  • 审核通过的红字信息表可以删除吗
  • 发票监制章是什么章图片
  • 营改增后不动产发票怎么开
  • 企业处理原材料会计分录
  • 管理费用的明细科目如何设置
  • sqlserver锁机制
  • mysql5.7.31
  • mongo 安装
  • 电脑系统安装流程
  • aow进程
  • win7家庭版开启administrator
  • linux中安装telnet
  • 怎么安装最新显卡驱动
  • shstart.exe - shstart是什么进程 有什么用
  • linux将文件移到指定文件夹
  • perl use cwd
  • python爬取app数据违法吗
  • activity启动流程图解
  • android怎么学
  • shell脚本启动应用程序
  • JavaScript中关于模板字符串
  • javascript教程chm
  • android 启动器 设置
  • 浙江税务客服咨询电话
  • 外经证办理流程在哪个网站申请
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设