技术标签: vue3.0+element plus vue elementui
刚开始接触项目,从0开始搭建管理平台,最开始先写的页面布局,采用的很笨的方法:每写一个页面就写一次页面布局样式
<el-container>
<el-aside style="width: auto" v-if="$route.meta.keepAlive">
<keep-alive>
<!-- 封装好的侧边导航栏组件 -->
<com-sidebar ></com-sidebar>
</keep-alive>
</el-aside>
<el-container>
<el-header v-if="$route.meta.keepAlive">
<keep-alive>
<!-- 封装好的顶部标题栏组件 -->
<header-navbar ></header-navbar>
</keep-alive>
</el-header>
<el-main>
<!-- 此处为不同的页面样式语句 -->
</el-main>
</el-container>
</el-container>
后来随着页面逐渐变多,代码冗余量也逐渐增多。于是采取了以下方法将整体的页面布局注册为了全局布局组件:
HTML:
<el-container>
<el-aside style="width: auto" v-if="$route.meta.keepAlive">
<keep-alive>
<com-sidebar></com-sidebar>
</keep-alive>
</el-aside>
<el-container>
<el-header v-if="$route.meta.keepAlive">
<keep-alive>
<header-navbar></header-navbar>
</keep-alive>
</el-header>
<el-main style="padding:0">
<router-view></router-view>
</el-main>
</el-container>
</el-container>
JS:
<script>
import ComSidebar from "@/components/sidebar/sidebar";
import HeaderNavbar from "@/components/navbar/navbar";
export default {
name: 'App',
components: {
ComSidebar,
HeaderNavbar
}
}
</script>
对于登录页、404页等不需要侧边栏的页面,可以利用keep-alive结合$route.meta来判断渲染(App.vue见上)
{
path: '/login',
component: () => import('@/pages/login/'),
hidden: true,
meta: {
keepAlive: false,
title: '登录'
}
},
首先安装一个按需导入插件 然后在babel.config.js中,没有的话创建一个 创建一个global文件夹,里面创建一个register-element.ts 然后创建一个入口文件,index.ts 然后去到我们的main.ts中 完事,之后在页面中什么都不用引入,直接使用我们在register-element.ts中定义的组件就行...
上代码...
开发环境: html用的vue2.x版本配合elementui,现要求使用vue3.x版本,发现必须elementui只能适用vue2.x,故使用element plus,由于并非vue文件,现通过CDN方式导入...
1、安装element plus 2、在main.ts文件里面配置element-plus 3、调用 element-plus的组件...
1、使用vite创建项目,并设置TS支持 2、安装element-plus 3、安装unplugin-vue-components 4、vite.config.ts中配置按需引入,配置后文件如下 至此,便可以使用element-plus了...
一、element-plus 安装 二、vue.config.js 配置 三、Icon的使用 1. 安装(第一种方式) 2. 全局注册 (新建svgicon.js文件) 3. main.js中引入 4. 项目中使用 5. 第二种方式(注册组件 新建 Icon.vue) 6. 项目中使用...
简要概述 element plus是element官方针对Vue3.0做的一套前端UI组件,在开发过程中经常会使用到el-menu这个组件,而且我们会将当前**的菜单设置高亮,而如果不设置default-active属性,我们则会遇到刷新页面后当前**的菜单项不高亮的问题 下面来解决这个问题,本文是根据vue3做的,之前在网上看到好多教程,都是提示将default-active设置为$router...
技术栈:vue3.0 + element plus + vite + TS + eslint 初始化项目 创建项目 进入项目,安装依赖,运行项目 引入TS 加入 ts 依赖 yarn add --dev typescript 在 项目根目录下创建 TypeScript 的配置文件 tsconfig.json 在 src 目录下新加 shim.d.ts 文件 把 main.js 修改成 main.t...
2019独角兽企业重金招聘Python工程师标准>>> AngularJS是当前非常的流行的前端框架,它的语法糖非常多,也极大的方便了前端开发者,但是有着用法还是需要去琢磨一下的 ng-options 在select表单控件中,总结一下目前的几种写法。 普通写法 优点:简单 缺点: 代码很不简洁,如果选项较多就会很乱 不方便渲染,如果option在变需要使用js动态加载 不方便存...