摘要:開發(fā)后臺系統(tǒng)問題總結項目參考了用了包裹頁面進行緩存點擊可切換不會重新渲染在特定頁面比如詳情頁需要每次刷新的時候添加進行相關的刷新導致了另外一個問題最初跳轉時用的傳參刷新參數就沒了特改為傳參涉及到關閉點擊等多個問題用存儲數據并做了最大限
vue+iview 開發(fā)后臺系統(tǒng)問題總結
項目參考了iview-admin
tags用了keep-alive 包裹 router-view,頁面進行緩存點擊tag可切換,不會重新渲染
在特定頁面比如詳情頁需要每次刷新的時候,添加watch $route 進行相關的刷新,導致了另外一個問題,最初跳轉時用的 params傳參,刷新參數就沒了,特改為query傳參.
涉及到關閉tag,點擊tag,等多個問題,用vuex存儲tags數據,并做了最大限制超過8個就splice(0,1)
menu主要是openName 這個props問題,即展開的menu name,采取的在根組件watch $route 根據router 的相應name 改變openName
form表單有相應的驗證問題,在FormItem 添加相應的ref 然后在腳本里自定義驗證規(guī)則
const validatesuffix = (rule, value, callback) => { if (value == "") { callback(new Error("標識不能為空")); } else { let testReg = /^[a-zA-Z][a-zA-Z0-9]{1,5}$/; if (!testReg.test(value)) { callback(new Error("2~6位,只能輸入英文數字(字母開頭)")); } else { checkExit({ suffix: { role: "10", suffix: value } }).then(res => { if (res.code == 0) { if (res.payload == true) { callback(); } else { callback(new Error("標識不可用,請重新輸入")); } } }); } } };table
項目用了很多table, iview 的table用render渲染列,不像element,模板比較簡潔
表格里數據有點擊操作,導致columns寫很多
簡單情況如下:
render: (h, params) => { let arr = this.child; let count = 0; for (let item of arr) { count += item.betCount; } if (params.row.role == "1") { return h("span", count); } else { return h("span", params.row.betCount); } }
復雜情況:Poptip組件里再渲染table
render: (h, params) => { let column = [ { title: "游戲", key: "name" }, { title: "占成", key: "rate" } ]; let data = []; let gameList = params.row.gameList; let len = gameList.length; for (let item of gameList) { let obj = {}; obj.rate = item.rate + "%"; obj.name = item.name; data.push(obj); } return h( "Poptip", { props: { trigger: "hover" } }, [ h( "span", { style: { cursor: "pointer", color: "#20a0ff" } }, len + "款游戲" ), h("Table", { props: { columns: column, data: data, border: true, size: "small", width: 250 }, slot: "content" }) ] ); }
事件處理:
return h( "Button", { props: { type: "text", size: "small" }, style: { color: "#20a0ff" }, on: { click: () => { let userId = params.row.userId; let displayName = params.row.displayName; let username = params.row.username; let parent = params.row.parent; this.$router.push({ path: "/dealerDetail", query: { userId, displayName, username, parent } }); } } }, "查看" );
exportCsv()方法,導出csv文件,iview 并未對render函數做處理,導致導出的數據沒有,只能寫很多代碼處理columns 列數據,以及data行數據,自定義導出,這個問題覺得該給iview團隊提提,
問題2,給循環(huán)處理的table,導出數據
({{item.length > 0 && item[0].parentDisplayName ? item[0].parentDisplayName : ""}}) 下級列表
綁定的ref加上index,已獲得當前表格,說到這個循環(huán),想起另外一問題
({{item.childItem.length > 0 && item.childItem[0].parentDisplayName ? item.childItem[0].parentDisplayName : parentNameChild}}) 下級列表
給循環(huán)的table 綁定RadioGroup v-model綁定成item.isTest,on-change是傳入item這樣就能使每個循環(huán)出來的數據獨立,當初就在想,在data里初始化的話,根本不知道有多少個循環(huán)出來的表格,一度認為這個無法實現(xiàn)
總結總體來說iview比較簡潔(相比element),風格和設計也很不錯.因為是全局引入,iview比較大
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/96746.html
摘要:小白,總結幾條遇到的打包問題開發(fā)代理服務器與上線接口調用的差別開發(fā)時用做代理打包時要區(qū)分開生產環(huán)境跟開發(fā)環(huán)境即開發(fā)配置文件生產配置文件這樣配置后接口調用方式變?yōu)槎皇浅R姷倪@種形式,這樣寫的目的是為了部署后能請求的接口中不會帶有導致請求地 webpack小白,總結幾條遇到的打包問題1.開發(fā)代理服務器與上線接口調用的差別開發(fā)時用devServer做代理 showImg(https://s...
摘要:在許多志愿者的幫助下,將文檔全部翻譯為英文,在開發(fā)者社區(qū)頗受歡迎。有了英文版后,更多的國外開發(fā)者也參與到討論之中,相信接下來會有更多來自國外的。英文版的翻譯離不開社區(qū)的貢獻,在此特別感謝和三位熱心志愿者。 showImg(https://segmentfault.com/img/bVRG13?w=2880&h=1800); 兩年前,我開始接觸 Vue.js 框架,當時就被它的輕量、組件...
摘要:在許多志愿者的幫助下,將文檔全部翻譯為英文,在開發(fā)者社區(qū)頗受歡迎。有了英文版后,更多的國外開發(fā)者也參與到討論之中,相信接下來會有更多來自國外的。英文版的翻譯離不開社區(qū)的貢獻,在此特別感謝和三位熱心志愿者。 showImg(https://segmentfault.com/img/bVRG13?w=2880&h=1800); 兩年前,我開始接觸 Vue.js 框架,當時就被它的輕量、組件...
摘要:錨點組件導航錨點框架中新添了一個錨點組件,用這個組件去做頁面的分類導航正好合適,但是苦于官方文檔太過抽象研究了一整天,才勉強可以在項目中應用。 iView3.x Anchor(錨點)組件 導航錨點 iview 3.x框架中新添了一個Anchor(錨點組件),用這個組件去做頁面的分類導航正好合適,但是苦于官方文檔太過抽象研究了一整天,才勉強可以在項目中應用。下面是我研究后的一點總結...
摘要:概述庫用的是是我們非常常用的組件。有一個特征是選中之后無法取消。現(xiàn)實中取消的需求是常見且可以理解的。所以看到這個需求之后第一嘗試在組件之上搞一搞,這一搞就入坑了,現(xiàn)在就來理一理我的入坑之路吧。 概述 ui庫用的是iview . radio、radioGroup是我們非常常用的組件。radio有一個特征是選中之后無法取消。現(xiàn)實中取消radio的需求是常見且可以理解的。所以看到這個需求之后...
閱讀 659·2021-10-27 14:15
閱讀 1188·2021-10-15 09:42
閱讀 2748·2019-08-30 15:53
閱讀 1291·2019-08-23 17:02
閱讀 2966·2019-08-23 16:23
閱讀 3185·2019-08-23 15:57
閱讀 3465·2019-08-23 14:39
閱讀 519·2019-08-23 14:35