前端工程化-自动生成vue页面(1)

复制代码

可以看见表格页模板里面有很多两个%包起来的变量,这是等下我们需要按照配置文件进行替换的变量。 我们继续在auto-build-page文件夹下新建一个build-page.js文件,里面写的是整个自动化操作的代码

var addConfig = require(‘./addConfig’)

var fs = require(‘fs’)

var path = require(‘path’)

var shell = require(‘shelljs’)

shell.echo(‘>>>>>>’)

shell.echo(‘开始新建页面’)

addConfig.forEach((ele) => {

if (ele.open) {

buildPage(ele)

}

})

复制代码

我们循环配置文件里面的配置,支持生成多个页面。对文件的操作我们直接使用node的fs模块完成。 读取模板文件,并根据配置文件,对模板文件里面的变量进行替换:

function buildPage(config) {

var paths = path.resolve(./src/views/${config.name})

shell.echo(‘页面地址:’ + paths)

mkdirSync(paths, function() {

var str = ‘’

if (config.helloworld) {

// 新建空白页,读取空白页模版

str = handleStr(

readF(path.resolve(‘./template-helloworld.vue’)),

config

)

} else {

str = handleStr(

readF(path.resolve(‘./template-table.vue’)),

config

)

}

// 写入文件

writeF(paths + ‘/index.vue’, str)

shell.echo(‘开始新增路由……’)

addRou(./views/${config.name}/index.vue, config)

})

}

复制代码

根据配置文件替换%包起来的变量:

function handleStr(str, config) {

if (config.helloworld) {

return str

}

str = str.replace(‘%title%’, config.desc)

str = str.replace(‘%method%’, config.getlist.method)

str = str.replace(‘%geturl%’, config.getlist.url)

return str

}

复制代码

添加路由

接下来是添加路由,在此之前我们还是需要添加一个路由的模板文件,在auto-build-page文件夹下新建一个template-route.txt文件:

{

path: ‘%path%’,

component: Home,

name: ‘%name%’,

redirect: { path: ‘%repath%’ },

children: [

{

path: ‘%repath%’,

component: (resolve) =>

require([‘%requirepath%’], resolve),

name: ‘%name2%’

}

]

},

复制代码

里面根据我们路由规则,写入模板。 回到build-page.js文件,我们继续书写添加路由的操作,我们先读取路由模板:

function addRou(paths, config) {

var templateStr = handleRouStr(

readF(path.resolve(‘./auto-build-page/template-route.txt’)),

config,

paths

)

// 添加到路由文件

addToConf(templateStr)

}

function handleRouStr(str, config, paths) {

str = str.replace(/%path%/g, /${config.name})

str = str.replace(/%name%/g, config.desc)

str = str.replace(/%name2%/g, ${config.desc}首页)

str = str.replace(/%repath%/g, /${config.name}/index)

str = str.replace(/%requirepath%/g, paths)

return str

}

将路由添加到vue项目src下的routes.js文件里面:

function addToConf(str) {

str += ‘// add-flag’ // 添加的位置标记

var confStr = handleConfRouStr(readF(path.resolve(‘./src/addRoute.js’)), str)

writeF(path.resolve(‘./src/addRoute.js’), confStr)

shell.echo(‘路由添加成功!’)

shell.echo(‘结束生成页面’)

shell.echo(‘>>>>>>’)

}

function handleConfRouStr(ori, str) {

ori = ori.replace(‘// add-flag’, str)

return ori

}

我这里是为了避免原来的routes.js文件,我新建了一个addRoute.js文件,然后在routes.js文件中引入,和原来的合并以下即可。 routes.js:

// 自动生成页面–自动添加路由

import addRoute from ‘./addRoute’

let routes = []

let lastRoute = routes.concat(addRoute)

export default lastRoute

addRoute.js:

const addRoute = [

// add-flag

// 不能删除

]

export default addRoute

接下来我们需要在package.json文件里面的scripts里面添加运行的脚本,这样,只需要执行npm run 命令就可以运行自动生成的操作:

“scripts”: { “dev”: “vue-cli-service serve”, “build”: “vue-cli-service build”, “bpage”: “node ./auto-build-page/build-page.js” },

现在执行npm run bpage 控制台输出:

开始新建页面

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
…(img-6IfSALoQ-1715097970807)]

[外链图片转存中…(img-eKLGeLVF-1715097970807)]

[外链图片转存中…(img-tfQ9hGul-1715097970807)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 21
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前端工程化是指通过使用一系列的工具、技术和方法,对前端开发进行规范和自动化的过程。前端工程化的目标是提高开发效率、代码质量和团队协作能力。 在前端工程化中,自动化生成Vue页面是一项重要的任务。通过使用一些工具和技术,可以方便地创建和管理Vue页面。 首先,我们可以使用脚手架工具(如Vue CLI)来快速生成Vue项目的基础结构和配置文件。脚手架工具可以为我们提供一个规范的项目结构,包括组织代码的目录结构、配置构建工具和开发服务器等。 其次,我们可以使用模板引擎(如Pug或EJS)来定义Vue页面的布局和结构。模板引擎可以帮助我们编写更简洁、可复用的HTML代码,并支持动态渲染数据。通过在模板中引用Vue组件并传递参数,我们可以动态生成不同的页面。 另外,我们可以使用自动化构建工具(如Webpack或Rollup)来自动处理、优化和打包Vue页面的资源。自动化构建工具可以帮助我们自动加载和压缩CSS、JavaScript和图片等资源,并且可以根据不同的构建环境生成相应的代码。 最后,我们可以使用版本控制系统(如Git)来管理并跟踪Vue页面的代码变更。通过版本控制系统,我们可以方便地进行代码协作、分支管理和代码回滚等操作,提高团队协作效率。 总之,通过前端工程化自动生成Vue页面,我们可以提高前端开发的效率和质量,同时改善团队协作和版本控制。这些工具和技术的结合,使得前端开发更加便捷和高效。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值