位置: 编程技术 - 正文

利用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基础教程)

  • 商品流通企业税种有哪些
  • 中税税务咨询
  • 个人销售商品交什么税
  • 免抵退税额如何填报
  • 单位之间调动
  • 税控盘服务费去年忘记抵了今年可以抵扣吗
  • 营改增后,建筑安装工程的费率是
  • 转增股本是不是缴个人所得税
  • 贷款损失准备金怎么计算
  • 税控发票包括哪些
  • 建筑安装项目要求有哪些
  • 差额事业单位发放科研奖励记账
  • 其他应交款入哪个科目
  • 国外人员劳务费怎么算
  • 出售无形资产属于让渡资产使用权吗
  • 5%征收率的适用范围
  • 出口退税要交企业所得吗
  • 个人投资收益要交所得税吗
  • 增值税发票如何读入金税盘
  • 房产税的计税依据包含增值税吗
  • 还在讨论“税务金四”上线?税务和银行要联手清查单位和个人账户了!
  • 发生广告费用会计分录
  • 高温补贴需要交个人所得税吗2019
  • 以旧换新的销售方式怎样确定销售额
  • 开发转产品好转吗
  • 企业的应收帐款增长率超过销售收入增长率是正常现象
  • 进口采购交的增值税
  • 季度收入超过30万但开票只有10万
  • 生育津贴还扣税吗
  • 长期债权投资业务处理
  • 小规模纳税人有销无进是什么意思
  • 企业买断政策
  • 息税前利润变化率计算
  • thinkphp 模型
  • win10播放视频软件
  • 默认网关和dns怎么填
  • 货款形式返还
  • php jsondecode
  • 银行存款日记账与银行对账单之间的核对属于
  • 成本结转的科目
  • 企业雇佣临时工个税
  • 什么是跨域以及跨境电商
  • php判断查询是否有结果
  • 最优化理论pdf
  • 人工智能lisp
  • 业务招待费的报销额度是多少
  • 前端面试题目100及最佳答案
  • css文件代码示例
  • 无效发票进项税额抵扣
  • 计提工会经费是什么工资项目
  • SQL SERVER使用的是( )逻辑模型
  • mysql创建存储过程sql语句
  • 未实缴出资的股东退股
  • 固定资产清理营业外支出可在税前扣除?
  • 先取得发票后支付怎么办
  • 退回多交的所得税怎么退
  • 招待费住宿费专票可以抵扣吗
  • 飞机票抵扣进项税申报表的填写
  • 租赁车子
  • 企业在非同一控制下的企业合并
  • sql server2000个人版安装步骤
  • mac10.15系统
  • win7系统玩英雄联盟黑屏怎么办
  • win10一年更新一次
  • centos 安装
  • win8图标大小怎么调
  • Android OpenGL ES(一)----必备知识
  • 用jquery制作网页
  • js中的隐式类型转换
  • socketio视频教程
  • unity已存在
  • jquery判断对象是否存在
  • 使用jquery的步骤
  • jQuery使用ajax跨域获取数据的简单实例
  • java图像对比
  • javascript脚本大全
  • 长春国税局科员工资是多少
  • 国税,地税
  • 企业代扣代缴个税
  • 地税企业所得税是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设