1. 在package.json中,写入脚本
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"temp": "node util/template.js"
},
2.在util/template文件夹下,创建通用模版。
main.html:
浏览器版本过低,无法支持此页面,请升级页面;
----------------------
main.js:
import Vue from 'vue'
import App from './main.vue'
Vue.config.productionTip = false
new Vue({
render: h => h(App),
}).$mount('#app')
---------------------
main.vue:
export default {
data() {
return {
};
},
methods: {
},
components: {
}
};
-------------------
3. 在util路径下,创建template.js执行脚本
/**
* 通过模版创建页面
*/
const path = require('path');
const fs = require('fs');
const readlineSync = require('readline-sync');
// 输入需要创建的页面名称
let pageName = readlineSync.question('enter your page name: ');
// 目标模块目录的地址
const pagePath = path.resolve(__dirname, '../src/pages', pageName);
console.log('pagePath',pagePath)
// 模板地址
const templatePath = path.resolve(__dirname, '../util/template');
console.log('templatePath',templatePath)
// 判断目标页面目录是否存在
if (fs.existsSync(pagePath)) {
// 存在指定页面,提示错误并退出程序
console.error(`${pageName} page is exists`)
process.exit()
}
// 创建目标页面目录
fs.mkdirSync(pagePath);
// 需要复制的文件
const copyFiles = ['main.html', 'main.js', 'main.vue'];
const copy = (source) => {
for (const item of source) {
// 读取模板中对应文件的内容
let fileText = fs.readFileSync(path.join(templatePath, item));
// 写入到目标页面中对于的文件中
fs.writeFileSync(path.join(pagePath, item), fileText)
}
}
// 执行复制操作
copy(copyFiles);
console.log('Successful page creation!');
--------------------
/**
* 通过模版创建页面
*/
const path = require('path');
const fs = require('fs');
const readlineSync = require('readline-sync');
// 输入需要创建的页面名称
let pageName = readlineSync.question('enter your page name: ');
// 目标模块目录的地址
const pagePath = path.resolve(__dirname, '../src/pages', pageName);
console.log('pagePath',pagePath)
// 模板地址
const templatePath = path.resolve(__dirname, '../util/template');
console.log('templatePath',templatePath)
// 判断目标页面目录是否存在
if (fs.existsSync(pagePath)) {
// 存在指定页面,提示错误并退出程序
console.error(`${pageName} page is exists`)
process.exit()
}
// 创建目标页面目录
fs.mkdirSync(pagePath);
// 需要复制的文件
const copyFiles = ['main.html', 'main.js', 'main.vue'];
const copy = (source) => {
for (const item of source) {
// 读取模板中对应文件的内容
let fileText = fs.readFileSync(path.join(templatePath, item));
// 写入到目标页面中对于的文件中
fs.writeFileSync(path.join(pagePath, item), fileText)
}
}
// 执行复制操作
copy(copyFiles);
console.log('Successful page creation!');