首先创建一个文件夹,并且使用 npm init -y 来初始化项目。
然后下载ejs和inquirer。
现在项目长这样:
在根目录下创建一个js文件,我这里命名为cli.js,并且在第一行加入**#!/usr/bin/env node**。
在package.json 里面增加 “bin”: “cli.js”,注意这里要和你新建的js文件名字要相同。
在根目录创建template文件夹,里面放入脚手架需要的文件,我这里只使用了一个index.js。里面有需要被替换的内容,可以使用**<%= 变量名 %>**替换。
#!/usr/bin/env node
const fs = require('fs');
const path = require('path');
const inquirer = require('inquirer');
const ejs = require('ejs');
inquirer.prompt([
{
type: 'input',
name: 'name',
message: 'project name'
}
]).then(answer => {
// console.log(answer);
const tmpDir = path.join(__dirname, 'templates'); // 模板路径
const aimDir = process.cwd(); // 当前命令行的路径
fs.readdir(tmpDir, (err, res) => {
if (err) throw err;
res.forEach(file => {
ejs.renderFile(path.join(tmpDir, file), answer, (err, result) => {
if (err) throw err;
fs.writeFileSync(path.join(aimDir, file), result);
})
})
})
})
前期工作准备好了,接下来我们来测试。
是不是很简单呢?30行代码就拥有了你自己的脚手架,快去试试吧。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/qq_46186155/article/details/123449709
内容来源于网络,如有侵权,请联系作者删除!