当前位置: 首页 > web >正文

Vue ui初始化项目并使用iview写一个菜单导航

win+R
输入命令

vue ui

浏览器会自动打开http://localhost:8000/
找到创建

image.png

选择一个目录创建vue项目
image.png

点击再此创建新项目
image.png

我一般都是再已经有git仓库的目录进行项目创建,所以这个勾去掉
点击下一步
image.png

这里可以选择默认,我这边选择手动,方便以后初始化项目时不用每次去配
image.png

image.png

把常用的几个插件都打上勾
image.png

给预设设置一个名称
image.png

将我们初始化的项目跑起来
image.png

成功

使用iview写一个示例
image.png

image.png

image.png

添加一个前端框架,这里选择iview,依赖和插件都装一下


image.png
配置插件

第一个是按需引入或者全局引入,为了方便一般都全局引入
第二个是如果自定义主题颜色时需要打开,正常情况下都不需要

定制主题

image.png

第二个勾上就会多这个文件,用户定制主题,可以将示例的@primary-color去掉
https://github.com/view-design/ViewUI/blob/master/src/styles/custom.less

新建 vue.config.js
module.exports = {chainWebpack: config => {config.module.rule('vue').use('iview').loader('iview-loader').options({prefix: false})},
}
编写一个导航菜单
修改App.vue
<template><div id="app"><router-view></router-view></div>
</template><script>
export default {name: 'app',components: {}
}
</script><style>
#app {}
</style>
修改Home.vue
<template><div><Menu active-name="1"><MenuGroup title="内容管理"><MenuItem name="1" :to="{path:'/home/menu1'}"><Icon type="md-document"/>菜单1</MenuItem><MenuItem name="2" :to="{path:'/home/menu2'}"><Icon type="md-chatbubbles" />菜单2</MenuItem></MenuGroup></Menu><router-view></router-view></div>
</template><script>export default {components: {}
}
</script>

添加两个Vue文件,内容随便填


image.png
修改路由 router/index.js
import Vue from 'vue'
import VueRouter from 'vue-router'Vue.use(VueRouter)const title = '网页标题'
const routes = [{path: '/',redirect: '/home/menu1',meta: {title: title},},{path: '/home',name: 'Home',component: () => import('../views/Home.vue'),meta: {title: title},children: [{path: 'menu1',component: () => import('../views/Menu1.vue'),meta: {title: title + '-菜单1'},},{path: 'menu2',component: () => import('../views/Menu2.vue'),meta: {title: title + '-菜单2'},},]}
]const router = new VueRouter({mode: 'history',base: process.env.BASE_URL,routes
})export default router

解决ie兼容性文件
修改 babel.config.js

module.exports = {presets: [['@vue/app', {useBuiltIns: 'entry',polyfills: ['es6.promise','es6.symbol']}]]
}

修改main.js

// 解决低版本兼容性问题
import 'core-js'import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import './plugins/iview.js'Vue.config.productionTip = falsedocument.title = ''
router.beforeEach((to, from, next) => {/* 路由发生变化修改页面title */if (to.meta.title) {document.title = to.meta.title}next()
})new Vue({router,store,render: h => h(App)
}).$mount('#app')


喜欢的朋友记得点赞、收藏、关注哦!!!

http://www.xdnf.cn/news/3198.html

相关文章:

  • BUUCTF——Fakebook 1
  • UE 材质 条纹循环发光
  • Android compileSdkVersion、minSdkVersion、targetSdkVersion的关系以及和Unity的关系
  • Qwen3本地化部署,准备工作:SGLang
  • K8S - 从单机到集群 - 核心对象与实战解析
  • 同时启动俩个tomcat压缩版
  • C# 在VS2022中开发常用设置
  • Python 爬取微店商品列表接口(item_search)的实战指南
  • 如何在Windows上实现MacOS中的open命令
  • 网工_ICMP协议
  • Linux-04-用户管理命令
  • Java List分页工具
  • 排序算法——选择排序
  • 微格式:为Web内容赋予语义的力量
  • 【Linux 网络】网络工具ifconfig和iproute/iproute2工具详解
  • 端到端观测分析:从前端负载均衡到后端服务
  • 进程、线程、进程间通信Unix Domain Sockets (UDS)
  • 《操作系统真象还原》第十一章——用户进程
  • Spring 框架中的常见注解讲解
  • Qt窗口关闭特效:自底而上逐渐消失
  • google colab设置python环境为python3.7
  • 提高程序灵活性和效率的利器:Natasha动态编译库【.Net】
  • 【学习笔记】Shell编程--Bash变量
  • HBuider中Uniapp去除顶部导航栏-小程序、H5、APP适用
  • 线上婚恋相亲小程序源码介绍
  • Learning vtkjs之ImageMarchingSquares
  • 国内免费连接claude-3-7大模型操作教程
  • 数据库系统综合应用与深度实践指南
  • VINS-FUSION:配置参数说明与配置自己的参数
  • 【XR】MR芯片 和 VR芯片之争