node-maker 开发中模板生成工具

node-maker是一个模板生成工具,用于在本地通过模板快速创建项目文件或复制代码。它支持通过模板生成文件和复制文件内容到剪贴板的功能,简化了开发中重复文件创建的过程。工具提供data、tempPath、projectPath和codesPath等参数,并采用特定的模板语法,如以'/—'开头和'—/'结尾的头部meta,以及在代码中以''包裹的参数。源代码和示例可在GitHub仓库中找到。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

个人blog:https://hirra.cn

类似于一个简易的模板引擎,可以在本地通过模板创建出项目中需要的文件或者copy代码。
可以参考:

https://github.com/myhirra/node-maker

代码目前还是不断完善中。

在项目开发的过程中,经常要去创建一些文件,而这些文件往往都长得差不多。新来的同学们往往会去copy项目中已有的代码,然后再修修改改,当然老同学也很有可能去这样做。其实我们现在来想一下,这个过程其实是很浪费时间的,明明是差不多的代码,而且往往很多难记,所以我们不得不去copy现有的代码,类似”模板“一样的代码。

其实这个环节我们完全可以用工具来代替,来节约大家的时间,这也完全符合前端工程化的思想。目前这个工具支持两种功能:

  • 1、通过模板生成文件
  • 2、复制文件内容到剪贴板

一、用法

  • 安装相应组件npm install
  • 写入口函数

入口函数可以参照demo目录里的写法,demo实现了两种功能。
1) 通过模板生成文件
2) 复制文件内容到剪贴板

//生成文件
var template = new Template({
    data: {
        methodName: methodName,
        fileName: fileName
    },
    tempPath: path.resolve(__dirname + '/templates'),
    projectPath: path.resolve(config.projectPath)
})
template.create();

//copy文件内容
var template = new Template({
    codesPath: path.resolve(__dirname + '/codes')
})
template.copy(fileName);

二、参数

1) data

指模板文件tpl里所需要的变量,例如模板文件里用的是,那data对象里需要给出test对应的值。

2) tempPath

指模板文件的目录,要写绝对路径。

3) projectPath

输出的文件目录。

4) codesPath

指定需要copy到剪贴板的文件的目录。

三、模板语法

1) 头部meta

以/—开头,以—/结尾。一般在这写相对projectPath的路径

2) 代码内容

除了meta的部分就是代码内容。需要渲染的参数以’开头,以’结尾。
例如:

3) 模板全名规范

*.tpl 。即以tpl为后缀名。

四、实现方式

—demo 一些实际使用的示例
—libs 可能会用到的一些库
—templates.js 核心代码

//模板的核心代码
content.replace(new RegExp(leftFlag + '(\\w+)' + rightFlag, 'g'), function() {
    return data[arguments[1]];
});

//拿头部时候的核心代码
content.substring(leftIndex + leftFlag.length, rightIndex).trim();

//copy的核心代码
//copy主要是用到了一个库copy-paste
require('copy-paste').copy('test',function(){});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值