小編給大家分享一下使用vue開發(fā)移動端管理后臺的注意事項(xiàng)有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
成都創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括商南網(wǎng)站建設(shè)、商南網(wǎng)站制作、商南網(wǎng)頁制作以及商南網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,商南網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到商南省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
Vue具體輕量級框架、簡單易學(xué)、雙向數(shù)據(jù)綁定、組件化、數(shù)據(jù)和結(jié)構(gòu)的分離、虛擬DOM、運(yùn)行速度快等優(yōu)勢,Vue中頁面使用的是局部刷新,不用每次跳轉(zhuǎn)頁面都要請求所有數(shù)據(jù)和dom,可以大大提升訪問速度和用戶體驗(yàn)。
1.對于項(xiàng)目的一些心得與體會
首先的一點(diǎn),就是,對于圖形界面框架的選型,這個(gè)很重要,對于一項(xiàng)目來說,開始動手前就要對項(xiàng)目的設(shè)計(jì)圖有個(gè)完整的了解,以便于自己選擇插件或者框架;
然后就是,對于交互性操作,比如:上傳圖片,預(yù)覽圖片啥的,應(yīng)該選擇是否是用圖形界面框架來實(shí)現(xiàn)還是另選專門的插件來實(shí)現(xiàn)
在完成項(xiàng)目中,我又新學(xué)到了上傳圖片插件vue-core-image-upload,移動端富文本編輯器vue-quill-editor
還有個(gè)地址的三級聯(lián)動mt-picker,(是基于mint-ui圖形界面框架的)
2.rem與px的轉(zhuǎn)換
從同事傳授中獲到的經(jīng)驗(yàn),對于rem與px的轉(zhuǎn)換,就是在index.html模板文件中加入下面的腳本,然后就是1rem=100px(這個(gè)可能不準(zhǔn)確,有更好的方法,各位大佬請?jiān)谠u論中留下,感激不盡)
<script type="text/javascript"> document.getElementsByTagName("html")[0].style.fontSize = 100 / 750 * window.screen.width + "px"; </script>
3.對于上傳圖片插件vue-core-image-upload中遇到的坑
對于跨域問題,有好多方法可以解決,這里講的挺多的前端跨域解決方法
還有就是后臺設(shè)置響應(yīng)頭access-control-allow-origin可以指定特定的域名,我這里的后臺設(shè)置的就是access-control-allow-origin:*,就是因?yàn)檫@樣,用這個(gè)上傳圖片的插件就會報(bào)錯(cuò)
Access to XMLHttpRequest at 'https://....' from origin 'http://localhost:8080' has been blocked by CORS policy: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.
這個(gè)問題我蒙圈了好久,和后臺也講了,就是處于蒙圈狀態(tài),已經(jīng)允許跨域了,怎么還報(bào)錯(cuò)呢?很煩
然后,終于找了個(gè)方法解決(有用過其他的上傳插件,感覺不好用,代碼或者思路好亂)
其實(shí)這個(gè)插件中的文檔也有提示,只是剛用,還不是很會
就是在使用這個(gè)插件的代碼中加上這個(gè)字段就可以了
<vue-core-image-upload class="btn btn-primary" :crop="false" input-of-file="file" @imageuploaded="loadMainImg" :max-file-size="5242880" :url="serverUrl" :credentials="false" //允許攜帶cookie ></vue-core-image-upload>
對于附帶身份憑證的請求,服務(wù)器不得設(shè)置 Access-Control-Allow-Origin 的值為“”。這是因?yàn)檎埱蟮氖撞恐袛y帶了 Cookie 信息,如果 Access-Control-Allow-Origin 的值為“”,請求將會失敗。
也就是說Access-Control-Allow-Credentials設(shè)置為true的情況下
Access-Control-Allow-Origin不能設(shè)置為*
4.基于mint-ui的三級地址選擇效果圖
template文件
<div class="modal" @click="handleCloseAddress"> <div class="cateContainer" @click.stop> <div class="operateBtn"> <div class="cancelBtn" @click="handleCloseAddress">取消</div> <div class="confirmBtn" @click="handleCloseAddress">確定</div> </div> <mt-picker class="addressPicker" :slots="myAddressSlots" @change="onAddressChange"></mt-picker> </div> </div>
js文件
json文件地址地址文件
// 定義一個(gè)包含中國省市區(qū)信息的json文件 import addressJson from '@/assets/common/address' export default { data() { return { myAddressSlots: [ { flex: 1, values: Object.keys(addressJson), className: 'slot1', textAlign: 'center' }, { divider: true, content: '-', className: 'slot2' }, { flex: 1, values: ['市轄區(qū)'], className: 'slot3', textAlign: 'center' }, { divider: true, content: '-', className: 'slot4' }, { flex: 1, values: ['東城區(qū)'], className: 'slot5', textAlign: 'center' } ], province:'省', city:'市', county:'區(qū)/縣', } }, methods: { onAddressChange(picker, values) { if(addressJson[values[0]]) { picker.setSlotValues(1, Object.keys(addressJson[values[0]])); picker.setSlotValues(2, addressJson[values[0]][values[1]]); this.province = values[0]; this.city = values[1]; this.county = values[2]; } }, } }
5.關(guān)于對是否登錄的處理
開始也有做過登錄的管理后臺,不過,在進(jìn)行登錄時(shí),總會一閃過登錄的界面,這種感覺很不好,在這里記錄下相比之前更好點(diǎn)的方法
在main.js文件中添加對router的鉤子函數(shù)
router.beforeEach((to, from, next) => { let token = localStorage.getItem('token'); if (!token && to.path !== '/login') { next('/login'); } else { next(); } });
通過判斷緩存里是否有token來進(jìn)行路由的跳轉(zhuǎn)
相對于之前的那種方法,這里對路由的跳轉(zhuǎn)進(jìn)行的攔截,在路由進(jìn)行跳轉(zhuǎn)前,進(jìn)行判斷
6.上拉加載mescroll.js插件
這里對于分頁加載第二頁使用的上拉加載的插件還是用了原來的插件,還是感覺挺好用的
這里有講述上拉加載,下拉刷新,滾動無限加載
7.移動端富文本插件Vue-Quill-Editor
效果圖
這里有相關(guān)案例代碼vue-quill-editor
<template> <quill-editor v-model="richTextContent" ref="myQuillEditor" :options="editorOption" @change="onEditorChange($event)"> </quill-editor> </template> <script> import { quillEditor } from "vue-quill-editor"; import 'quill/dist/quill.core.css'; import 'quill/dist/quill.snow.css'; import 'quill/dist/quill.bubble.css'; export default{ data() { return {} }, methods: { onEditorChange(e) {} } } </script>
響應(yīng)事件
onEditorChange(e){ console.log(e) this.richTextContent = e.html; },
8.移動端圖片預(yù)覽插件
vue-picture-preview
<img :src="url" v-preview="url" preview-nav-enable="false" />
需要在app.vue中加入如下代碼
<lg-preview></lg-preview>
效果圖
以上是“使用vue開發(fā)移動端管理后臺的注意事項(xiàng)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)站名稱:使用vue開發(fā)移動端管理后臺的注意事項(xiàng)有哪些
文章地址:http://muchs.cn/article36/ighppg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、品牌網(wǎng)站設(shè)計(jì)、微信小程序、小程序開發(fā)、做網(wǎng)站、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)