天天看點

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

一、vue-element-admin

1、簡介

而vue-element-admin是基于element-ui 的一套背景管理系統

內建方案

功能:https://panjiachen.github.io/vue-element-admin-site/zh/guide/#功能

GitHub位址:https://github.com/PanJiaChen/vue-element-admin

項目線上預覽:https://panjiachen.gitee.io/vue-element-admin

2、安裝

1、下載下傳模闆架構壓縮檔案

這裡我們使用171KB的 vue-admin-template-master.zip。

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

2、将檔案解壓到工作區裡面

3、通過vscode的終端打開解壓檔案夾,進行依賴安裝

# 安裝依賴
npm install
           

注意:使用npm下載下傳時,出現錯誤

Unexpected end of JSON input while parsing near···

解決方法:先清除緩存,再重新安裝

# 清除緩存
npm cache clean --force
           
谷粒學院(六)前端頁面搭建說明 | vue-element-admin

4、啟動下載下傳好依賴項目

# 啟動。執行後,浏覽器自動彈出并通路http://localhost:9527/
npm run dev
           
谷粒學院(六)前端頁面搭建說明 | vue-element-admin

二、前端頁面環境說明

1、前端架構入口

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

2、前端頁面使用架構模闆,主要基于兩種技術實作出來

vue-admin-template 模闆 = vue + element-ui

3、目錄結構介紹

  • build目錄:放項目建構的腳本檔案
  • config目錄:全局配置
  • node_modules目錄:項目依賴子產品
  • src:項目源代碼
  • static:靜态資源
  • package.jspon:項目資訊和依賴配置
config
├── index.js  // 修改useEslint:true,值修改為false
└── dev.env.js // 修改通路後端接口位址
           
src
├── api // 各種接口,定義調用方法
├── assets // 圖檔等資源 
├── components // 各種公共元件,非公共元件在各自view下維護 
├── icons // 圖示 
├── router // 路由表 
├── store // 存儲 
├── styles // 各種樣式 
├── utils // 公共工具,非公共工具,在各自view下維護 
├── views // 各種layout,具體頁面
├── App.vue //***項目頂層元件*** 
├── main.js //***項目入口檔案***
└── permission.js //認證入口
           

三、項目的建立和基本配置

1、建立項目

将vue-admin-template-master重命名為guli-admin

2、修改項目資訊

package.json

{
    "name": "guli-admin",
    ......
    "description": "谷粒學院背景管理系統",
    "author": "Helen <[email protected]>",
    ......
}
           

3、如果需要修改端口号

config/index.js中修改

4、登入頁修改

src/views/login/index.vue(登入元件)

4行

28行

<el-button :loading="loading" type="primary" style="width:100%;" @click.native.prevent="handleLogin">
    登入
</el-button>
           

5、頁面零星修改

1、标題

index.html(項目的html入口)

修改後熱部署功能,浏覽器自動重新整理

2、國際化設定

打開 src/main.js(項目的js入口),第7行,修改語言為 zh-CN,使用中文語言環境,例如:日期時間元件

import locale from 'element-ui/lib/locale/lang/zh-CN' // lang i18n
           

3、icon

複制 favicon.ico 到根目錄

4、導航欄文字

src/views/layout/components(目前項目的布局元件)

src/views/layout/components/Navbar.vue

13行

<el-dropdown-item>
    首頁
</el-dropdown-item>
           

17行

5、面包屑文字

src/components(可以在很多項目中複用的通用元件)

src/components/Breadcrumb/index.vue

38行

meta: { title: '首頁' }
           

四、把系統登入功能改造本地(模拟登入)

1、系統登入預設使用這個位址

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

2、把登入請求位址改造本地

修改配置檔案請求位址,在config檔案夾裡面有dev.env.js

//BASE_API: '"https://easy-mock.com/mock/5950a2419adc231f356a6636/vue-admin"',
BASE_API: '"http://localhost:8001"',
           

3、進行登入調用兩個方法,login登入操作方法,和info登入之後擷取使用者資訊的方法。是以,建立接口兩個方法實作登入

通過檢視

/src/store/modules/user.js

檔案發現:

(1)login 傳回token值

(2)info 傳回roles、name、avatar頭像。

4、開發接口

建立EduLoginController類

@RestController
@RequestMapping("/eduservice/user")
@CrossOrigin  //解決跨域
public class EduLoginController {
    
    //login
    @PostMapping("login")
    public R login() {
        return R.ok().data("token","admin");
    }
    
    //info
    @GetMapping("info")
    public R info() {
        return R.ok().data("roles","[admin]").data("name","admin").data("avatar","https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif");
    }
    
}
           

5、修改api檔案夾login.js修改本地接口路徑

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

6、最終測試,出現問題

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

跨域問題:通過一個位址去通路另外一個位址,這個過程中如果有三個位址任何一個不一樣

通路協定  http    https
ip位址  	192.18.1.1   172.11.11.11
端口号    9528     8001
           

7、跨域解決方式

(1)在後端接口controller添加注解(常用)

@CrossOrigin  //解決跨域
public class EduLoginController {
           

(2)使用網關解決(後面會說)

五、架構使用過程

1、添加路由

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

2、點選某個路由,顯示路由對應頁面内容

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

對應頁面是

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

3、在api檔案夾建立js檔案,定義接口位址和參數

谷粒學院(六)前端頁面搭建說明 | vue-element-admin

4、在建立vue頁面引入js檔案,調用方法實作功能

引入 import user from '.....'

data:{
},
created(){
},
methods:{
}
           

5、使用element-ui顯示資料内容。

如果有收獲!!! 希望老鐵們來個三連,點贊、收藏、轉發。

創作不易,别忘點個贊,可以讓更多的人看到這篇文章,順便鼓勵我寫出更好的部落格

繼續閱讀