当前位置:首页 > VUE

vue elementui实现管理后台

2026-02-22 10:09:37VUE

使用 Vue 和 Element UI 实现管理后台

初始化项目

使用 Vue CLI 创建一个新项目,确保已安装 Vue CLI。运行以下命令创建项目:

vue create admin-dashboard

进入项目目录后,安装 Element UI:

cd admin-dashboard
npm install element-ui

引入 Element UI

main.js 中引入 Element UI 并注册:

import Vue from 'vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

设计布局

创建一个基础布局组件,通常包括顶部导航栏、侧边栏和内容区域。在 src/components 下创建 Layout.vue

<template>
  <el-container>
    <el-aside width="200px">
      <el-menu
        default-active="1"
        class="el-menu-vertical"
        background-color="#545c64"
        text-color="#fff"
        active-text-color="#ffd04b">
        <el-menu-item index="1">
          <i class="el-icon-menu"></i>
          <span>Dashboard</span>
        </el-menu-item>
        <el-menu-item index="2">
          <i class="el-icon-document"></i>
          <span>Forms</span>
        </el-menu-item>
      </el-menu>
    </el-aside>
    <el-container>
      <el-header style="background: #409EFF; color: white;">
        <span>Admin Dashboard</span>
      </el-header>
      <el-main>
        <router-view></router-view>
      </el-main>
    </el-container>
  </el-container>
</template>

<script>
export default {
  name: 'Layout',
};
</script>

配置路由

src/router/index.js 中配置路由,将布局组件作为根路由:

vue elementui实现管理后台

import Vue from 'vue';
import Router from 'vue-router';
import Layout from '@/components/Layout';
import Dashboard from '@/views/Dashboard';

Vue.use(Router);

export default new Router({
  routes: [
    {
      path: '/',
      component: Layout,
      children: [
        {
          path: '',
          name: 'Dashboard',
          component: Dashboard,
        },
      ],
    },
  ],
});

创建页面组件

src/views 下创建页面组件,例如 Dashboard.vue

<template>
  <div>
    <h3>Dashboard</h3>
    <el-card>
      <p>Welcome to the admin dashboard.</p>
    </el-card>
  </div>
</template>

<script>
export default {
  name: 'Dashboard',
};
</script>

表格和表单

Element UI 提供了丰富的表格和表单组件。在 src/views 下创建 Users.vue 展示表格:

<template>
  <div>
    <el-table :data="users" style="width: 100%">
      <el-table-column prop="name" label="Name"></el-table-column>
      <el-table-column prop="email" label="Email"></el-table-column>
    </el-table>
  </div>
</template>

<script>
export default {
  data() {
    return {
      users: [
        { name: 'John', email: 'john@example.com' },
        { name: 'Jane', email: 'jane@example.com' },
      ],
    };
  },
};
</script>

集成 API 调用

使用 axios 调用后端 API。安装 axios

vue elementui实现管理后台

npm install axios

src/services/api.js 中创建 API 服务:

import axios from 'axios';

const api = axios.create({
  baseURL: 'https://api.example.com',
});

export default {
  getUsers() {
    return api.get('/users');
  },
};

响应式设计

Element UI 的布局组件支持响应式设计。通过调整 el-asideel-main 的宽度,可以适配不同屏幕尺寸。结合媒体查询优化移动端体验:

@media (max-width: 768px) {
  .el-aside {
    width: 100px !important;
  }
}

部署项目

构建项目并部署到服务器:

npm run build

将生成的 dist 文件夹内容上传到服务器。

标签: 后台vue
分享给朋友:

相关文章

vue 实现在线预览

vue 实现在线预览

Vue 实现在线预览的常见方法 使用 iframe 嵌入 通过 iframe 标签可以嵌入多种类型的文件,如 PDF、图片、网页等。需要确保文件地址可访问。 <template> &…

vue自己实现下拉导航

vue自己实现下拉导航

实现下拉导航的基本思路 在Vue中实现下拉导航,可以通过结合Vue的响应式数据和事件绑定特性来完成。主要思路是利用v-show或v-if控制下拉菜单的显示与隐藏,并通过鼠标事件或点击事件触发状态变化。…

实现简易vue

实现简易vue

实现简易 Vue 的核心思路 Vue 的核心功能包括数据响应式、模板编译和虚拟 DOM。以下是一个简易实现方案,涵盖核心功能模块。 数据响应式系统 通过 Object.defineProperty…

vue实现键盘

vue实现键盘

Vue 实现键盘功能 在Vue中实现键盘功能通常涉及监听键盘事件、处理输入以及渲染虚拟键盘界面。以下是几种常见的实现方式: 监听键盘事件 通过@keydown或@keyup指令监听键盘事件,适用于需…

vue实现hover

vue实现hover

Vue 实现 hover 效果的方法 在 Vue 中实现 hover 效果可以通过多种方式实现,包括使用 CSS、Vue 指令或事件监听。以下是几种常见的方法: 使用 CSS :hover 伪类 通…

vue 实现排序

vue 实现排序

Vue 实现排序的方法 使用计算属性实现排序 通过计算属性对数组进行排序,可以保持原始数据不变。示例代码展示了如何对列表按名称升序排序: <template> <div>…