vue-cli创建的项目,配置多页面的实现方法


Posted in Javascript onMarch 15, 2018

vue官方提供的命令行工具vue-cli,能够快速搭建单页应用。默认一个页面入口index.html,那么,如果我们需要多页面该如何配置,实际上也不复杂

假设要新建的页面是rule,以下以rule为例

创建新的html页面

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width,initial-scale=1.0">
		<meta content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">
		<meta http-equiv="pragma" content="no-cache">
		<meta http-equiv="cache-control" content="no-cache">
		<meta http-equiv="expires" content="0">
		<title></title>
	</head>
	<body>
		<span style="color:#000000;"><div id="rule"></div></span>
		<!-- built files will be auto injected -->
	</body>
</html>

创建入口文件Rule.vue和rule.js,仿照App.vue和main.js

<template>
	<div id="rule">
		<router-view></router-view>
	</div>
</template>
<script>
	export default {
		name: 'lottery',
		data() {
			return {
			}
		},
		mounted: function() {
			
			this.$router.replace({
					path:'/rule'
			});
		},
	}
</script>
<style lang="less">
	body{
		margin:0;
		padding:0;
	}
</style>

rule.js

import Vue from 'vue'
import Rule from './Rule.vue'
import router from './router'
import $ from 'jquery'
//import vConsole from 'vconsole'
import fastclick from 'fastclick'
Vue.config.productionTip = false
fastclick.attach(document.body)
Vue.config.productionTip = false;
 
/* eslint-disable no-new */
new Vue({
 el: '#rule',
 router,
 template: '<Rule/>',
 components: { Rule },
})

修改config/index.js

build添加rule地址,即编译后生成的rule.html的地址和名字

build: {
  // Template for index.html
  index: path.resolve(__dirname, '../dist/index.php'),
  rule: path.resolve(__dirname, '../dist/rule.php'),
  ……
 }

rule: path.resolve(__dirname, '../dist/rule.php')表示编译后再dist文件下,rule.html编译后文件名为rule.php

修改build/webpack.base.conf.js

配置entry

entry: {
  app: './src/main.js',  
  rule: './src/rule.js'
 },

修改build/webpack.dev.conf.js

在plugins增加

new HtmlWebpackPlugin({ 
   filename: 'rule.html', 
   template: 'rule.html', 
   inject: true, 
   chunks:['rule'] 
  }),

修改build/webpack.prod.conf.js

在plugins增加

new HtmlWebpackPlugin({
   filename: config.build.rule,
   template: 'rule.html',
   inject: true,
   minify: {
    removeComments: true,
    collapseWhitespace: true,
    removeAttributeQuotes: true
    // more options:
    // https://github.com/kangax/html-minifier#options-quick-reference
   },
   // necessary to consistently work with multiple chunks via CommonsChunkPlugin
   chunksSortMode: 'dependency',
   chunks: ['manifest','vendor','rule']
  }),

以上全部

当后台地址跳转到你的新建的页面后,由于现在配置的默认路由是公用的,可自己配置多个路由文件,分别引用。

可在Rule.vue中路由跳转到指定路由,以实现页面控制

mounted: function() {
			
	this.$router.replace({
		path:'/rule'
	});
},

以上这篇vue-cli创建的项目,配置多页面的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript面向对象之Javascript 继承
May 04 Javascript
JQuery判断HTML元素是否存在的两种解决方法
Dec 26 Javascript
jQuery检测鼠标左键和右键点击的方法
Mar 17 Javascript
深入浅析JavaScript中对事件的三种监听方式
Sep 29 Javascript
AngularJS 与Bootstrap实现表格分页实例代码
Oct 14 Javascript
assert()函数用法总结(推荐)
Jan 25 Javascript
vuejs指令详解
Feb 07 Javascript
解决webpack打包速度慢的解决办法汇总
Jul 06 Javascript
JS关于刷新页面的相关总结
May 09 Javascript
JavaScript中的this妙用实例分析
May 09 Javascript
全局安装 Vue cli3 和 继续使用 Vue-cli2.x操作
Sep 08 Javascript
uniapp实现横向滚动选择日期
Oct 21 Javascript
mpvue中配置vuex并持久化到本地Storage图文教程解析
Mar 15 #Javascript
iview中Select 选择器多选校验方法
Mar 15 #Javascript
用Axios Element实现全局的请求loading的方法
Mar 15 #Javascript
基于IView中on-change属性的使用详解
Mar 15 #Javascript
解决iView中时间控件选择的时间总是少一天的问题
Mar 15 #Javascript
iview日期控件,双向绑定日期格式的方法
Mar 15 #Javascript
vue iview组件表格 render函数的使用方法详解
Mar 15 #Javascript
You might like
mayfish 数据入库验证代码
2010/04/30 PHP
php实现字符串翻转的方法
2015/03/27 PHP
php中JSON的使用方法
2015/04/30 PHP
PHP获取指定日期是星期几的实现方法
2016/11/30 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
PHP实现cookie跨域session共享的方法分析
2019/08/23 PHP
js 触发select onchange事件代码
2014/03/20 Javascript
Javascript类型转换的规则实例解析
2016/02/23 Javascript
举例讲解jQuery中可见性过滤选择器的使用
2016/04/18 Javascript
jquery实现左右无缝轮播图
2020/07/31 Javascript
快速解决js开发下拉框中blur与click冲突
2016/10/10 Javascript
jQuery监听浏览器窗口大小的变化实例
2017/02/07 Javascript
es6学习之解构时应该注意的点
2017/08/29 Javascript
jQuery实现合并表格单元格中相同行操作示例
2019/01/28 jQuery
一起写一个即插即用的Vue Loading插件实现
2019/10/31 Javascript
Python用 KNN 进行验证码识别的实现方法
2018/02/06 Python
opencv python 傅里叶变换的使用
2018/07/21 Python
对django views中 request, response的常用操作详解
2019/07/17 Python
Django中使用极验Geetest滑动验证码过程解析
2019/07/31 Python
用Python将Excel数据导入到SQL Server的例子
2019/08/24 Python
使用Matplotlib 绘制精美的数学图形例子
2019/12/13 Python
Python 定义只读属性的实现方式
2020/03/05 Python
完美解决jupyter由于无法import新包的问题
2020/05/26 Python
python动态规划算法实例详解
2020/11/22 Python
英国受欢迎的运动鞋和街头服装商店:Footasylum
2018/06/12 全球购物
专升本自我鉴定
2013/10/10 职场文书
计算机学生求职信范文
2014/01/30 职场文书
四议两公开实施方案
2014/03/28 职场文书
美术专业自荐信
2014/07/07 职场文书
环境卫生倡议书
2014/08/29 职场文书
介绍信的格式
2015/01/30 职场文书
督导岗位职责范本
2015/04/10 职场文书
团拜会主持词
2015/07/04 职场文书
送给火锅店的创意营销方案!
2019/07/08 职场文书
python数据库批量插入数据的实现(executemany的使用)
2021/04/30 Python
python基础之类方法和静态方法
2021/10/24 Python