位置: 编程技术 - 正文

利用node.js实现自动生成前端项目组件的方法详解(node.js使用教程)

编辑:rootadmin

推荐整理分享利用node.js实现自动生成前端项目组件的方法详解(node.js使用教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js开发实战详解,怎么用nodejs运行js代码,利用nodejs实现百度文本审核,nodejs实战教程,node.js使用教程,怎么用nodejs运行js代码,node.js怎么用,利用nodejs实现百度文本审核,内容如对您有帮助,希望把文章链接给更多的朋友!

本文主要给大家介绍了关于利用node.js实现自动生成前端项目组件的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:

脚本编写背景

写这个小脚本的初衷是,项目本身添加一个组件太繁琐了,比如我想要去建立一个login的组件,那么我需要手动去IDE中,创建index.js(组件出口文件),login.js(业务文件),login.html,login.less这四个文件。因为每个组件都有一些输出的代码,还要把之前组件的那几行拷贝过来,这种作业真的烦,于是乎写了一个小脚本去自动完成这些功能。

PS:本脚本运行环境是nodeV7以上,当前时间/,stable版本还是V6,最新的node版本为V8.1.3(LTS版本),如要运行,请升级node版本为LTS版本。

预期效果

在命令行输入:node set login

在conponents文件夹下面自动生成4个文件,并填写index.js , login.js的文件公共内容。

如果输入多层文件如: node set login/foo

则会先检测conponents文件夹下是否存在login,如不存在,先创建login文件夹,然后创建foo的组件。本脚本主要使用nodejs的fs模块来完成需求。

fs模块fs模块用于对系统文件及目录进行读写操作,本次主要用到的fs模块的功能有:

fs.existsSync(path) 检测文件夹是否存在,一个同步的API,只接受一个路径参数,当前版本异步的废弃了。 fs.mkdir(path,callback) 创建文件夹,异步,两个必填参数,路径和回掉。 fs.readFileSync(path) 读取文件,接受一个参数,文件路径。 fs.writeFile(path,data,callback) 写文件,接受三个参数,文件路径,向文件中写的数据,回掉。

代码实施

流程图

利用node.js实现自动生成前端项目组件的方法详解(node.js使用教程)

获取命令行参数

以node set login为例,想要创建一个login文件夹,首先先要获取命令行当中的login。在nodejs当中,获取命令行参数使用process.argv这条命令返回一个数组,第一个参数为nodejs.exe的应用所在绝对路径,第二个参数为当前脚本所在的绝对路径,之后所输入的参数以空格分隔,如输入node set aaa,得到:

检测文件夹是否存在

判断是否存在文件夹,如果存在,重新拼接路径继续检查,如不存在则生成文件夹。

创建文件夹

node set foo/bar

创建文件夹成功后,重新拼接路径,以便于继续查找。

读取模板内容

每个生成好的文件都需要一个创建的时间,及作者,包括文件的输出,以及class等结构,这些都是比较公用的,把他们写在模板当中,然后读取出来,替换其中的关键词,如时间,组件名等。

生成文件并写入内容

提前建立好要生成的文件和要读取的文件。如:

目前只写了2个要读取的模板,在生成文件之后,会将模板中的内容填充进去。

总结

以上就完成了一个自动生成前端项目组件的小脚本了,当然,还可以继续扩充,比如这些组件其实还需要再到,组件管理的那个js中去注入,这些都可以用脚本完成,本文就到这里为止了。

好了,

标签: node.js使用教程

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

上一篇:详解Node项目部署到云服务器上(node项目部署)

下一篇:深入学习nodejs中的async模块的使用方法(nodejs基础教程)

  • 出口企业何时选择免(征)税申报方式?
  • 财务管理考试时间多长
  • 股东转让股权公司如何做账
  • 普票需要填写全部开票信息吗
  • 产品成本包括哪几个部分
  • 金税盘清卡时间包括15号吗
  • 一般纳税人进货收到普通发票
  • 金银首饰在哪个平台买比较好
  • 房地产开发企业的土地使用权计入哪里
  • 缓缴税款到期缴纳罚款吗
  • 食堂收入支出结构图
  • 交车辆购置税可以刷信用卡吗
  • 非盈利企业账务处理
  • 卖股票为什么要留一手
  • 租赁合同印花税计税依据
  • 现金折扣怎么计算消费税
  • 发票作废相关规定
  • 原始股 出售
  • 花店怎么做会计工作
  • 增值税多交了怎么申请退税
  • 专项附加扣除如何自行申报
  • 短期借款应付利息列报
  • 收到投资方投入原材料
  • 发生销售折让怎么办
  • 下列关于企业发生的税费说法正确的是
  • nw.exe是什么进程
  • 备用金会涨额度吗
  • 股票印花税和佣金的关系
  • 企业成本核算应遵循
  • 公司注册登记需要提交的资料包括
  • 投资款超过实收资本会计处理
  • Servlet4.0 Response
  • centos7.3安装
  • 一般商品销售的会计分录
  • 余额百分比法计提坏账准备
  • 工程附加税税率
  • 对增值税发票开具方面是有啥要求?
  • 增值税进项税没抵扣
  • 金融工具占比低
  • 存货的盘盈
  • 关联交易现金流
  • 营业外支出会计编码
  • 增值税计提多了已经跨年度怎么办
  • 出口免抵退和免退有什么区别
  • 现金日记账是什么帐
  • 营业执照过期多久不能审
  • 年度利润总额怎么填
  • 代扣代缴的增值税为什么可以抵扣
  • 如何把数据导入mysql中
  • mysqldump -s
  • sql常用命令使用方法
  • linux /bin/false
  • 找回被删除的文件时第一步应该是什么
  • 系统组策略打不开
  • windows8正版
  • xp系统如何获取ip地址
  • ubuntu安装后怎么启动
  • 删除 ubuntu
  • ctl.start
  • xp的命令提示符在哪
  • win7免费升级永久win8
  • win7 64位旗舰版设置插上耳机就能播放声音拔下耳机就自动禁音方法
  • win7系统鼠标指针形状介绍
  • windows7组织
  • jquery.parsejson
  • css控制文字换行
  • Internet Explorer 8 beta 中文版与IE7共存的解决方法
  • wow 脚本开发
  • android aidl binder
  • linux反弹shell方法
  • excel替换一行内容
  • 怎么看物理内存
  • unity 3d ui
  • unity的gui
  • js判断浏览器内核和版本
  • 安卓端测试
  • android 材料设计
  • 个人所得税预扣预缴办法
  • 中国依靠房地产能发展多久
  • 电子税务局申领的发票怎么读入
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设