Spring Cloud + Vue前后端分離-第4章 使用Vue cli 4搭建管理控臺

Spring Cloud + Vue前后端分離-第4章 使用Vue cli 4搭建管理控臺

4-1 使用vue cli創建admin項目

Vue 簡介

Vue作者尤雨溪在google工作時,最早只想研究angular的數據綁定功能,后面覺得這個小功能很好用,有前景,就再擴展,取名vue并放到github

vue、angular和微信小程序的代碼結構很像,學了一個,另外兩個上手就比較容易

學習建議:有空時多瀏覽文檔,熟悉vue提供了哪些功能。在實戰中遇到各種楊景,再回歸文欄尋找解決方案

Vue CLI

使用vue cli新建admin項目

注意:需要提前安裝好node.js,可以看這篇文章

如果想要idea終端是bash形式的,可以在設置的Terminal中選擇Shell path路徑為bash.exe

?

npm install -g @vue/cli可以用于初始安裝,也可以用于升級到最新版本

?

?

創建admin項目?

??

vuecli初始安裝帶了babel和eslint插件,bable:javascript編譯器;eslint:代碼規范檢查

?

?

?

點擊網址,就可以打開

??

package.json類似于pom.xml,里面配置各種js版本依賴

main.js是vue入口文件,用來初始化vue實例并集成所需要的插件

?

4-2 集成bootstrap后臺管理模板ace

響應式設計與bootstrap

Bootstrap中文網

Bootstrap來自Twitter,是目前最受歡迎的響應用框架,它基于html,css,javascript,簡單易擴展,因此有很多第三方的模板

柵格系統是bootstrap的布局核心,需要重點掌握

?

ace admin模板介紹

bootstrap有很多第三方模板,有很多機構或個人通過開發模板收費賺錢。模板種類很多,控臺、商城、企業官網、博客等

?

點擊github,下載zip,解壓文件夾

admin 增加 ace 模板

復制ace-master文件夾,粘貼到public文件夾下

所有項目中的靜態代碼,全部放在public目錄下

2.index.html中加入ace admin模板所需要的js css?

1.把login.html中<head></head>和引用第三方的js,如圖所示,拷貝到index.html中,把<script>放到<head>里的末尾

2.原來index.html中<head></head>里保留一句

是這個index.html

3.第二部保留那句話,是為了我們更好的去模仿

ctrl+r,輸入好替換的,然后點擊Replace All

批量替換小技巧:找到要批量替換的共同點,可以包含特殊字符,"= 等,替換的時候,也加上這些特殊字符,這樣又快又準

Ctrl+Z撤銷,Ctrl+Shift+Z重做

雙擊serve相當于啟動命令,啟動后點擊網址就可以訪問了

推薦把Autoscrol to Source和Autoscroll from Source勾選,文件快速定位,左右同步

Autoscroll to Source -> Open Files with Single Click
Autoscroll from Source -> Always Select Opened File

然后把login.html中的main-container拷貝到這里

把不用的先去掉?

然后serve啟動

在這里,可能會提示錯誤,$未定義,但是我們的js已經引入過了,我們需要改一下配置,在rules中加上"no-undef": "off",再次啟動,就可以了

eslint,用于檢測代碼規范。是一把雙刃劍,有一些檢測沒必要,可以通過修改配置禁用掉?

1.簡化登錄頁面代碼?

一般后臺管理系統不允許注冊,需要由管理員來新建用戶

App.vue

<template><div class="main-container"><div class="main-content"><div class="row"><div class="col-sm-10 col-sm-offset-1"><div class="login-container"><div class="center"><h1><i class="ace-icon fa fa-leaf green"></i><span class="">控臺登錄</span></h1></div><div class="space-6"></div><div class="position-relative"><div id="login-box" class="login-box visible widget-box no-border"><div class="widget-body"><div class="widget-main"><h4 class="header blue lighter bigger"><i class="ace-icon fa fa-coffee green"></i>請輸入用戶名密碼</h4><div class="space-6"></div><form><fieldset><label class="block clearfix"><span class="block input-icon input-icon-right"><input type="text" class="form-control" placeholder="Username" /><i class="ace-icon fa fa-user"></i></span></label><label class="block clearfix"><span class="block input-icon input-icon-right"><input type="password" class="form-control" placeholder="Password" /><i class="ace-icon fa fa-lock"></i></span></label><div class="space"></div><div class="clearfix"><label class="inline"><input type="checkbox" class="ace" /><span class="lbl"> 記住我</span></label><button type="button" class="width-35 pull-right btn btn-sm btn-primary"><i class="ace-icon fa fa-key"></i><span class="bigger-110">登錄</span></button></div><div class="space-4"></div></fieldset></form></div><!-- /.widget-main --></div><!-- /.widget-body --></div><!-- /.login-box --></div><!-- /.position-relative --></div></div><!-- /.col --></div><!-- /.row --></div><!-- /.main-content --></div><!-- /.main-container -->
</template><script>
$('body').attr('class', 'login-layout light-login');
export default {name: 'App',
}
</script>

4-3 集成路由vue-router

會生成2個文件

別人拉取我的代碼到本地后,運行“npm install”會去下載package.json里配置的所有依賴的js,這時vue-router可能下載到的版本是3.6.6或其他版本

這樣下載到的版本肯定是3.6.5

login.vue里面的內容就是原來app里面的內容?


angular也有這兩種url展現形式,一般選擇history,美觀

router-view是路由嵌套標簽,一般配合父子路由使用

app.vue

<template><div id="app"><router-view/></div>
</template>

main.js

import Vue from 'vue'
import App from './app.vue'
import router from './router'
Vue.config.productionTip = false;new Vue({router,render: h => h(App),
}).$mount('#app')

即便我在網址上面輸入其他內容

回車之后,依然是/login

根據需求可以將這些改成2,看起來更加緊湊好看

Ctr+AIt+L格式化代碼,就可以看到效果了

制作admin頁面

1.增加admin頁面

?2.增加路由配置,訪問/admin時,加載admin組件

登錄還有點問題,之后會繼續改進?

login頁面和admin頁面跳轉?

1.增加login頁面登錄按鈕點擊事件,跳轉到admin頁面

點擊登錄,就會跳轉到admin頁面

4-4 控臺歡迎頁面開發

mouted的使用

vue組件生命周期中有很多鉤子函數,mounted和created都是vue的初始化函數。

參考Vue 實例 — Vue.js

1.使用mounted解決組件初始化樣式的問題

現在,再次刷新,就是都正常的了?

結論:組件每次加載,mounted都會再次執行

使用router-view增加welcome子組件

1.增加welcome子組件,增加/admin/welcome子路由

router-view 一般配合子路由使用

注意:子路由的配置不要”/"開頭?

eslint實在是每次都要檢查,我干脆把它卸載掉,并且把相關的配置都刪除掉,就不會再檢查報錯?

?

{"name": "admin","version": "0.1.0","private": true,"scripts": {"serve": "vue-cli-service serve","build": "vue-cli-service build","lint": "vue-cli-service lint"},"dependencies": {"core-js": "^3.8.3","vue": "^2.6.14","vue-router": "^3.6.5"},"devDependencies": {"@babel/core": "^7.12.16","@vue/cli-plugin-babel": "~5.0.0","@vue/cli-service": "~5.0.0","vue-template-compiler": "^2.6.14"},"browserslist": ["> 1%","> 1%","last 2 versions","not dead"]
}

?控臺頁面元素修改

響應式設計的一個體現:根據不同屏幕分辨率不同,彈窗顯示在不同的位置

Ctrl+Y:刪除當前選中的行,只要某一行有部分被選中,這一行就會全部刪除

structure窗口,顯示當前文件的代碼層級結構

1.將面包屑導航、搜索、設置刪除

1.增加js依賴,解決navbar中,三個菜單的點擊彈窗效果。

js從ace/index.htmI復制

data-toggle:用于按鈕和模態框(彈出層)的事件綁定

ace/blank頁面引入js,只到這個位置,從ace/index頁面中再復制下面的js庫

放到public/index.html

2.使用相對路徑解決頭像路徑問題?

把其他的地方也進行替換

1.側邊欄去掉無用的菜單

2.底部文案修改

active:當前菜單是激活樣式 (高亮,粗體,字體顏色藍色等)。open :把當前菜單下的子菜單展開

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/207010.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/207010.shtml
英文地址,請注明出處:http://en.pswp.cn/news/207010.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[MySQL] MySQL復合查詢(多表查詢、子查詢)

前面我們學習了MySQL簡單的單表查詢。但是我們發現&#xff0c;在很多情況下單表查詢并不能很好的滿足我們的查詢需求。本篇文章會重點講解MySQL中的多表查詢、子查詢和一些復雜查詢。希望本篇文章會對你有所幫助。 文章目錄 一、基本查詢回顧 二、多表查詢 2、1 笛卡爾積 2、2…

機器學習筆記 - 基于深度學習計算視頻中演員的出鏡時間

一、基本步驟 這里是使用動畫片貓和老鼠進行計算,基本流程如下: 1、導入并讀取視頻,從中提取幀,并將其另存為圖像 2、標記一些圖像以訓練模型(別擔心,我已經為你做好了) 3、根據訓練數據構建我們的模型 4、對剩余圖像進行預測 5、計算湯姆和杰瑞的屏幕時間 二、基礎環境…

教師未來發展前景如何

作為一名教師&#xff0c;我對未來發展的前景也感到有些迷茫。 不過教育行業仍然是一個穩定的職業&#xff0c;但是隨著社會的變化和科技的發展&#xff0c;傳統的教學模式已經逐漸被在線教育、人工智能等新型教學方式所取代。這使得教師的角色和職責也在發生變化&#xff0c;需…

matplot繪圖時圖像太大報錯但能保存

matplot繪圖時&#xff0c;圖像太大&#xff0c;可能在jupyter里面報錯&#xff0c;但是圖像可以保存。 報錯&#xff1a;Image size of 12237479x675 pixels is too large. It must be less than 2^16 in each direction. 在這里插入圖片描述

Linux中用bash寫腳本

本章主要介紹如何使用bash 了解通配符了解變量了解返回值和數值運算判斷語句 grep的用法是“grep 關鍵字 file”&#xff0c;意思是從file中過濾出含有關鍵字的行 例如&#xff0c;grep root /var/log/messages&#xff0c;意思是從/var/log/messages 中過濾出含有root 的行…

SpringIOC第二課,@Bean用法,DI詳解,常見面試題Autowired VS Resource

一、回顧 但是我們之前MVC時候&#xff0c;在頁面上&#xff0c;為什只用Controller,不用其他的呢&#xff1f; 用其他的好使嗎&#xff1f;(我們可以在這里看到&#xff0c;出現404的字樣&#xff09; Service ResponseBody public class TestController {RequestMapping(&quo…

kubernetes安裝kubesphere

前置默認都安裝了k8s&#xff0c;且k8s都正常 1、nfs文件系統 1.1、安裝nfs-server # 在每個機器。 yum install -y nfs-utils# 在master 執行以下命令 echo "/nfs/data/ *(insecure,rw,sync,no_root_squash)" > /etc/exports# 執行以下命令&#xff0c;啟動 …

數字化和數智化一字之差,究竟有何異同點?

在2023杭州云棲大會的一展臺內&#xff0c;桌子上放著一顆番茄和一個蛋糕&#xff0c;一旁的機器人手臂融入“通義千問”大模型技術后&#xff0c;變得會“思考”&#xff1a;不僅能描述“看”到了什么&#xff0c;還能確認抓取的是番茄而不是蛋糕。 “傳統的機械臂通常都只能基…

Post Quantum Fuzzy Stealth Signatures and Applications

目錄 筆記后續的研究方向摘要引言貢獻模塊化框架模糊構造實施適用于FIDO Post Quantum Fuzzy Stealth Signatures and Applications CCS 2023 筆記 后續的研究方向 摘要 自比特幣問世以來&#xff0c;基于區塊鏈的加密貨幣中的私人支付一直是學術和工業研究的主題。隱形地址…

cmd命令 常用的命令

網絡工作為常年公司里的背鍋俠&#xff0c;不得不集齊十八般武藝很難甩鍋。像cmd命令這種好用又好上手的技術&#xff0c;就是網絡工程師上班常備技能。 只要按下快捷鍵 winR&#xff0c;輸入cmd回車&#xff0c;然后輸入cmd命令。 像我自己&#xff0c;我就經常用cmd命令檢測…

在UBUNTU上使用Qemu和systemd-nspawn搭建RISC-V輕量級用戶模式開發環境

參考鏈接 使用Qemu和systemd-nspawn搭建RISC-V輕量級用戶模式開發環境 - 知乎 安裝Qemu sudo apt updatesudo apt -y install qemu-user-binfmt qemu-user-static systemd-container sudo apt -y install zstd 配置環境 RISCV_FILEarchriscv-2023-10-09.tar.zstwget -c ht…

浪潮信息KeyarchOS——保衛數字未來的安全防御利器

浪潮信息KeyarchOS——保衛數字未來的安全防御利器 前言 眾所周知&#xff0c;目前流行的操作系統有10余種&#xff0c;每一款操作系統都有自己的特點。作為使用者&#xff0c;我們該如何選擇操作系統。如果你偏重操作系統的安全可信和穩定高效&#xff0c;我推薦你使用浪潮信…

openEuler JDK21 部署 Zookeeper 集群

zookeeper-jdk21 操作系統&#xff1a;openEuler JDK&#xff1a;21 主機名IP地址spark01192.168.171.101spark02192.168.171.102spark03192.168.171.103 安裝 1. 升級內核和軟件 yum -y update2. 安裝常用軟件 yum -y install gcc gcc-c autoconf automake cmake make \zl…

E: 無法獲得鎖 /var/lib/dpkg/lock-frontend。鎖正由進程 6253(apt-get)持有

問題 解決方案 sudo rm /var/lib/dpkg/lock-frontend接著&#xff0c;繼續安裝。

el-from表單實現lable字體大小改變

<el-form-item label"活動名稱" class"my-form"> <el-input v-model"form.name" style"width: 80%;" ></el-input> </el-form-item> <style scoped lang"less"> //給當前頁面所以的lable都字…

Fiddler抓包測試

模擬弱網測試 操作&#xff1a;一、Rules - Customize Rules &#xff08;快捷鍵CtrlR&#xff09;彈出編輯器 二、接著CtrlF查找m_SimulateModem標志位 三、默認上傳300ms&#xff0c;下載150ms 四、更改后&#xff0c;繼續Rules - Performances - Simulate Modem Speeds勾上 …

【復雜網絡建模】——基于Graph Convolutional Networks (GCN)進行鏈接預測

目錄 一、復雜網絡建模 二、圖嵌入方法&#xff08;Graph Convolutional Networks (GCN) &#xff09; 1. 圖表示&#xff1a; 2. 鄰接矩陣&#xff08;Adjacency Matrix&#xff09;&#xff1a; 3. 圖卷積層&#xff08;Graph Convolutional Layer&#xff09;&#xff…

【C語言】7-32 刮刮彩票 分數 20

7-32 刮刮彩票 分數 20 全屏瀏覽題目 切換布局 作者 DAI, Longao 單位 杭州百騰教育科技有限公司 “刮刮彩票”是一款網絡游戲里面的一個小游戲。如圖所示&#xff1a; 每次游戲玩家會拿到一張彩票&#xff0c;上面會有 9 個數字&#xff0c;分別為數字 1 到數字 9&#xf…

Python 中 Thread 線程的用法

使用thread一直沒記錄過&#xff0c;最近又忘記具體用法了&#xff0c;記錄下 Thread()是Python標準庫中threading模塊的一個類&#xff0c;它可以用來創建和管理線程。線程是一種并發執行的方式&#xff0c;可以讓你的程序在等待某些事件的同時&#xff0c;執行其他的任務。例…

排序-插入排序與希爾排序

文章目錄 一、插入排序二、希爾排序 一、插入排序 思路&#xff1a; 當插入第i(i>1)個元素時&#xff0c;前面的array[0],array[1],…,array[i-1]已經排好序&#xff0c;此時用array[i]的排序碼與array[i-1],array[i-2],…的排序碼順序進行比較&#xff0c;找到插入位置即將…