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 相关文章推荐
自适应高度框架 ----属个人收藏内容
Jan 22 Javascript
js 获取计算后的样式写法及注意事项
Feb 25 Javascript
JavaScript在Android的WebView中parseInt函数转换不正确问题解决方法
Apr 25 Javascript
js实现类似菜单风格的TAB选项卡效果代码
Aug 28 Javascript
javascript 判断页面访问方式电脑或者移动端
Sep 19 Javascript
Angular表单验证实例详解
Oct 20 Javascript
vue watch自动检测数据变化实时渲染的方法
Jan 16 Javascript
一秒学会微信小程序制作table表格
Feb 14 Javascript
JS添加或删除HTML dom元素的方法实例分析
Mar 05 Javascript
微信小程序实现点击卡片 翻转效果
Sep 04 Javascript
JS中this的4种绑定规则详解
Feb 04 Javascript
Vue 样式切换及三元判断样式关联操作
Aug 09 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
盘点PHP和ASP.NET的10大对比!
2015/12/24 PHP
ThinkPHP使用getlist方法实现数据搜索功能示例
2017/05/08 PHP
javascript-简单的计算器实现步骤分解(附图)
2013/05/30 Javascript
解析window.open的使用方法总结
2013/06/19 Javascript
jQuery获取当前对象标签名称的方法
2014/02/07 Javascript
轻量级javascript 框架Backbone使用指南
2015/07/24 Javascript
九种原生js动画效果
2015/11/11 Javascript
javascript实现的网站访问量统计代码
2015/12/20 Javascript
JavaScript鼠标特效大全
2016/09/13 Javascript
JS封装的三级联动菜单(使用时只需要一行js代码)
2016/10/24 Javascript
jquery操作ID带有变量的节点实例
2016/12/07 Javascript
vue-lazyload图片延迟加载插件的实例讲解
2018/02/09 Javascript
分享一个vue项目“脚手架”项目的实现步骤
2019/05/26 Javascript
js canvas实现5张图片合成一张图片
2019/07/15 Javascript
vue项目中极验验证的使用代码示例
2019/12/03 Javascript
[02:56]DOTA2亚洲邀请赛 VG出场战队巡礼
2015/02/07 DOTA
Python Tkinter简单布局实例教程
2014/09/03 Python
详解Python中的装饰器、闭包和functools的教程
2015/04/02 Python
Pycharm编辑器技巧之自动导入模块详解
2017/07/18 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
Python中用psycopg2模块操作PostgreSQL方法
2017/11/28 Python
python 查找文件名包含指定字符串的方法
2018/06/05 Python
python selenium爬取斗鱼所有直播房间信息过程详解
2019/08/09 Python
python加密解密库cryptography使用openSSL生成的密匙加密解密
2020/02/11 Python
python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例
2020/02/28 Python
Keras load_model 导入错误的解决方式
2020/06/09 Python
全网最详细的PyCharm+Anaconda的安装过程图解
2021/01/25 Python
长曲棍球装备:Lacrosse Monkey
2020/12/02 全球购物
非功能性需求都包括哪些方面
2013/10/29 面试题
网游商务专员求职信
2013/10/15 职场文书
办公室文员工作职责
2014/01/31 职场文书
连锁酒店店长职责范本
2014/02/13 职场文书
代理协议书范本
2014/04/22 职场文书
《三亚落日》教学反思
2014/04/26 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
python爬虫之利用selenium模块自动登录CSDN
2021/04/22 Python