问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vue2.0怎样开发多页面

发布网友 发布时间:2023-08-01 21:08

我来回答

1个回答

热心网友 时间:2023-09-15 09:20


这次给大家带来vue2.0怎样开发多页面,vue2.0开发多页面的注意事项有哪些,下面就是实战案例,一起来看一下。
我们平常用vue开发的时候总觉得vue好像就是专门为了单页面应用而诞生的,其实不是。因为vue在工程化开发的时候很依赖webpack,而webpack是将所有的资源整合到一块,弄成一个单页面。但是vue不止可以做单页面,它还可以做多页面,如果要做多页面的话需要对他的依赖,也就是webpack就是重新配置才可以。本文将详细讲webpack的配置。

vue的开发有两种,一种是直接的在script标签里引入vue.js文件即可,这样子引入的话个人感觉做小型的多页面会比较舒坦,一旦做大型一点的项目,还是离不开webpack。所以另一种方法也就是基于webpack和vue-cli的工程化开发。下面详解步骤。
先声明,如果用vue进行工程化开发,首先要有node.js,然后再下一个npm,不过一般新版的node都会有npm所以可以不用弄。指令是在命令行里输入。首先第一步就是生成一个vue项目,用指令:
vue init webpack test
博主本人声明的文件名为test,下载好后一路enter,之后便生成了一个vue项目,但是这个vue项目还没有一些相关的依赖,这个时候需要进入到该文件夹里面,输入指令:
npm install
如果网速不好,则用cnpm install,效果一样。略等几分钟后整个依赖便已经下完,之后输入指令:
npm run dev
则会自动打开一个界面,如果报错不能打开网页的话只有一种原因,那就端口占用,这个时候需要到/config/index.js目录下改端口就行。

当一个vue项目完成好所有的配置后,接下来就是我们的重点了,首先我们新新建几个html文件,博主我新建了一个one.html和two.html,及其与之对应的vue文件和js文件,文件目录如下:

弄好之后我们进入buildwebpack.base.conf.js目录下,在mole.exports的域里,找到entry,在那里配置添加多个入口:
entry: {
app: './src/main.js',
one: './src/js/one.js',
two: './src/js/two.js'
},
注意,紫色部分的变量名要起好,因为后面要用到,以防忘记。

接下来就是对开发环境run dev里进行修改,打开buildwebpack.dev.conf.js文件,在mole.exports那里找到plugins,下面写法如下:
plugins: [
new webpack.DefinePlugin({
'process.env': config.dev.env
}),
// https://github.com/glenjamin/webpack-hot-middleware#installation--usage
new webpack.HotMoleReplacementPlugin(),
new webpack.NoEmitOnErrorsPlugin(),
// https://github.com/ampedandwired/html-webpack-plugin
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'index.html',
inject: true,
chunks: ['app']
}),
new HtmlWebpackPlugin({
filename: 'one.html',
template: 'one.html',
inject: true,
chunks: ['one']
}),
new HtmlWebpackPlugin({
filename: 'two.html',
template: 'two.html',
inject: true,
chunks: ['two']
}),
new FriendlyErrorsPlugin()
]
在chunks那里的app指的是webpack.base.conf.js的entry那里与之对应的变量名。chunks的作用是每次编译、运行时每一个入口都会对应一个entry,如果没写则引入所有页面的资源。

之后就对run build也就是编译环境进行配置。首先打开configindex.js文件,在build里加入这个:
index: path.resolve(dirname, '../dist/index.html'),
one: path.resolve(dirname, '../dist/one.html'),
two: path.resolve(dirname, '../dist/two.html'),
然后打开/build/webpack.prod/conf.js文件,在plugins那里找到HTMLWebpackPlugin,然后添加如下代码:
new HtmlWebpackPlugin({
filename: process.env.NODE_ENV === 'testing'
? 'index.html'
: config.build.index,
template: 'index.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', 'app']
}),
new HtmlWebpackPlugin({
filename: config.build.one,
template: 'one.html',
inject: true,
minify: {
removeComments: true,
collapseWhitespace: true,
removeAttributeQuotes: true
},
chunksSortMode: 'dependency',
chunks: ['manifest', 'vendor', 'one']
}),
new HtmlWebpackPlugin({
filename: config.build.two,
template: 'two.html',
inject: true,
minify: {
removeComments: true,
collapseWhitespace: true,
removeAttributeQuotes: true
},
chunksSortMode: 'dependency',
chunks: ['manifest', 'vendor', 'two']
}),
其中filename引用的是configindex.js里的build,每个页面都要配置一个chunks,不然会加载所有页面的资源。

然后one.js文件可以这样写:
import Vue from 'vue'
import one from './one.vue'
Vue.config.proctionTip = false
/* eslint-disable no-new */
new Vue({
el: '#one',
render: h => h(one)
})
one.vue写法如下:
<template>
<p id="one">
{{msg}}
</p>
</template>
<script>
export default {
name: 'one',
data () {
return {
msg: 'I am one'
}
}
}
</script>
two的写法与之类似,所以不写下来了,

然后App.vue里通过这样写:
<template>
<p id="app">
<a href="one.html" rel="external nofollow" >one</a><br>
<a href="two.html" rel="external nofollow" >two</a><br>
{{msg}}
</p>
</template>这样子当你打开页面的时候,点击上面one的链接就会跳转到one.html,点击two就跳转到two.html。这样子就大功告成了。
相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
JS提示文本框邮箱地址补全
$.ajax()方法怎样从服务器里获取json数据
vue2.0怎样开发多页面

首先第一步就是生成一个vue项目,用指令:vue init webpack test博主本人声明的文件名为test,下载好后一路enter,之后便生成了一个vue项目,但是这个vue项目还没有一些相关的依赖,这个时候需要进入到该文件夹里面,输入指令:npm install如果网速不好,则用cnpm install,效果一样。略等几分钟后整个依...

vue多页面开发?

vue-cli配置多页面应用vue脚手架创建的应用默认都是单页面的SPA,若需要开发多页面应用,需要自己手动配置。其实本质上就是将默认生成的这些文件(index.html、main.js、App.vue)当作一个页面,复制一份改改名字和基本内容作为另一个页面。1、方便管理在src新建pages目录然后pages下建各个页面对应的文件夹...

vue单页面和多页面?

Vue.js能做PC端单页式网站开发吗1、并不是只是单页应用,vue,angular,react这种的确是为单页面应用,尤其是为复杂的富应用而生,但并不代表这些框架就不适合做多页面应用了。2、那么前端如果是一个PC网站如果要考虑兼容性,那么用的相对比较多的其实还是jquery。但是在目前大多数浏览器都能支持比较新...

vue单页面改造多页面应用

1将当前项目改造成多页面目录 pages下为我们开发的目录文件,改造过程就是将原src下所有目录结构复制到home,index每个页面单独一份为了提现多页面优势,这里我们选用两款ui框架,以便最后做下打包体积对比npm?i?element-ui?-Snpm?i?ant-design-vue?-S 在home和index中分别引入home页面类似,然后我们更改vue.config.js...

vue2.0项目上线后,进去后变成如图所视,刷新没用,必须关掉移动端在进去才...

最先将它是因为他不仅支持移动端而且还支持pc端,做到了多端兼容,而且无需写css就能实现非常美观的界面。首先下载,如下:npm install --save vuetify 2).vant 下载安装,如下:npm i vant -S 3).Mint UI 也是饿了么前端团队开发的基于移动端的组件库,首先来下载安装,如图:npm i mint-ui --...

后端Python3+Flask结合Socket.io配合前端Vue2.0实现简单全双工在线客服...

- 前端采用Vue2.0构建,安装socket.io模块并指定版本2.1.0。- 在`main.js`中引用socket.io实例,并配置前端与后端服务地址的连接。- 创建`index.vue`组件展示用户界面,通过socket.io接收和发送消息。- 可以开发`item.vue`组件模拟客服界面,实现多用户同时在线聊天。5. **测试与验证**:- 访问...

vue-cli配置多页面应用时chunk-vendors优化-分割逻辑

这些插件在官网的开发中都用不到,官网只用到了tailwindcss。因此希望通过配置多页面实现代码的分割。官网保持轻量,只加载vuevue-routeraxios等必要的库,而其他的库如ant-design-vue等不需要加载到官网的页面中。问题当我以为只需要按照vue-cli文档的配置vue-clipages进行配置,一切都会按照我的设想进行...

基于Vue.js 2.0 酷炫自适应背景视频登录页面的设计

首先,介绍背景视频 Web 页面的常见实现方式。国外资源网站「Coverr」提供了丰富的教程与视频资源,旨在帮助前端开发者构建出独特的背景视频主页。接下来,我们将基于 Vue.js 2.0 开发环境,利用 vue-cli 创建项目,并在项目中构建登录页面。具体步骤包括但不限于 HTML 模板、CSS 样式与 JavaScript 逻辑...

记一次vue2项目开发模式从wepack转vite的改造流程

首先引入了Vite和相关插件,确保环境与需求相匹配。具体来说,使用了vite-plugin-vue2@2.0.3来兼容Vue2的环境,选择vite@4.5.3作为Vite版本,考虑到兼容性需求以及node版本至少要达到v18,同时引入了vite-plugin-html@3.2.2和vite-plugin-require@1.2.14以解决多页面和动态模板需求以及require问题。

使用vue创建的项目只有一个html文件

只有一个。因为vue是单页面项目开发,也就是所有的业务逻辑和内容的呈现都是在一个页面上完成,只是根据功能的不同,通过路由实现页面的跳转。vue项目通过webpack打包,最后生成的是一个index.html文件,这个文件里面引用各种js和css,达到封装和渲染的目的。由此可见一个vue项目只有一个html文件。

vue开发多页面应用 vue多页面开发步骤 vue 多页面和单页面 vue开发时总是跳转到登录页面 vue开发网页 vue实现多页面 vue如何实现多页面 多页面应用需要vuejs吗 vue只能做单页开发吗
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
wifi密码被别人知道了怎么办? 界定酒驾的标准是什么 nginx怎么实现单应用的并发连接数限制啊??是面向应用的~~~求高手指点... 【部署-04】Nginx的配置说明 花雨旋律国际服如何下载 ...被我删除了,不知道他的网名,也不知道他的QQ号,怎么样能再找回来... 淮南市政务服务中心 淮南市人民政府办公室内设机构 我的孩子英语水平很差,该如何是好呢? 想从杭州九堡客运中心坐汽车去宁国,不知道有没有汽车啊? vue中配置mint-ui报css错误如何解决 怎样使用vuemint-uitabbar(附代码) 怎样操作Vue使用MintUI实现左滑删除效果CellSwipe 在vue中如何安装Mint-UI 根雕茶几选购技巧有哪些? 想请懂的瓷器的专家鉴定一下年代及估价谢谢! 跪求专家鉴定这两个瓷器?价值多少?什么年代的? 瓷器求鉴定年代价值?谢谢 请各位帮忙鉴定下面两个瓷器属于什么年代以及市场价格,不胜感激! 瓷器求鉴定年代价值谢谢 &#xFFFC;&#xFFFC;瓷器圆盘底部落款顺贞二个字、是什么年代的呢?价值大概多少 衣服穿紧的裤子宽松的带什么耳钉呢 贵阳端午节游玩好去处有哪些 妍姿艳态腰如束的翻译是什么 妍姿结宵态的翻译是什么 15万出头买合资SUV,全系8AT,空间惊喜,开过都说好 天逸C5AIRCROSS遇到威兰达,懂车的更喜欢前者? 青铜立人像手里拿着什么 石榴种子什么时候种植 老年人用什么化妆品好 css3如何利用选择器在页面中插入所需内容(附代码) 中国红色文化研究院的介绍 中国文化研究院的介绍 还有两天中考一分钟跳绳了,满分跳绳要180,我只有160个,我跳绳老是失败... 河南红色文化研究院怎么样? ...掷实心球 800米 立定跳远我的体育很差,还有一个月左右,我该怎么补救... 上海郑报红色文化研究院怎么样 ...如何在短时间内使我一分钟跳绳达到中考跳绳要求 距体育中考还有一星期,怎么在这一星期对自己成绩有所提高。我们考跳绳18... 揭秘巨蟹座和十二星座的匹配度 如何给搜狗输入法换皮肤 搜狗输入法的皮肤怎么设置 梦想世界战士带法宝宝好还是攻宝宝好? 梦想世界69拳剑战,求同行大神帮忙,在装备,BB上有什么要求,各种求 梦想世界停59还69?BB选择呢? 梦想世界带什么BB比较好? 梦想世界枪战士带什么BB好? 梦想世界攻BB打什么技能好 梦想暗器69战士怎么样搞才极品 cdr怎么导出文件