国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Vue的編碼技巧與規范使用詳解

2024-05-06 15:35:24
字體:
來源:轉載
供稿:網友

當我們完成項目的構建,進入開發階段的時候,除了你需要了解框架本身的知識點外,我們還需要提前掌握一些項目的編碼技巧與規范,在根源上解決之后因編碼缺陷而導致的項目維護困難、性能下降等常見問題,為項目多人開發提供編碼的一致性。

本文將羅列項目中常用的一些編碼技巧與規范來幫助大家提升代碼質量,并會結合代碼片段加強大家的理解與認知。當然不是所有實例都是針對 Vue.js 開發的,有些同樣也適用于其他前端項目。

實例

1. 使用對象代替 if 及 switch

在很多情況下,我們經常會遇到循環判斷執行賦值操作的場景,一般我們都會使用 if 及 switch 的條件判斷,如果符合則執行賦值,不符合則進入下個判斷,比如:

let name = 'lisi';let age = 18;if (name === 'zhangsan') { age = 21;} else if (name === 'lisi') { age = 18;} else if (name === 'wangwu') { age = 12;}// 或者switch(name) { case 'zhangsan':  age = 21;  break case 'lisi':  age = 18;  break case 'wangwu':  age = 12;  break}

這樣的寫法不僅冗余,而且代碼執行效率不高,我們可以使用對象的形式簡寫:

let name = 'lisi';let obj = { zhangsan: 21, lisi: 18, wangwu: 12};let age = obj[name] || 18;

以上這種技巧適用于循環判斷一次賦值的情況,如果判斷過后有較多處理邏輯的還需要使用 if 或 switch 等方法。

2. 使用 Array.from 快速生成數組

一般我們生成一個有規律的數組會使用循環插入的方法,比如使用時間選擇插件時,我們可能需要將小時數存放在數組中:

let hours = [];for (let i = 0; i < 24; i++) { hours.push(i + '時');}

如果使用 Array.from 我們可以簡寫為:

let hours = Array.from({ length: 24 }, (value, index) => index + '時');

3. 使用 router.beforeEach 來處理跳轉前邏輯

在某些情況下,我們需要在路由跳轉前處理一些特定的業務邏輯,比如修改路由跳轉、設置 title 等,代碼如下:

import Vue from 'vue'import Router from 'vue-router'Vue.use(Router)// 首頁const Home = (resolve => { require.ensure(['../views/home.vue'], () => {  resolve(require('../views/home.vue')) })})let base = `${process.env.BASE_URL}`;let router = new Router({ mode: 'history', base: base, routes: [  {   path: '/',   name: 'home',   component: Home,   meta: { title: '首頁' }  }, ]})router.beforeEach((to, from, next) => { let title = to.meta && to.meta.title;  if (title) {  document.title = title; // 設置頁面 title }  if (to.name === 'home') {   // 攔截并跳轉至 page2 單頁,$openRouter 方法在第 5 節中封裝  Vue.$openRouter({   name: 'page2'  }); }  next();})export default router            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 玉门市| 赞皇县| 福贡县| 阿克陶县| 东阿县| 临泽县| 皮山县| 新竹市| 天峨县| 金川县| 雷波县| 屏南县| 汾阳市| 息烽县| 辽宁省| 霍城县| 长岭县| 大安市| 上杭县| 双柏县| 凉城县| 犍为县| 曲阳县| 黎川县| 九龙坡区| 白山市| 乐安县| 绍兴市| 永修县| 正镶白旗| 玉树县| 汽车| 漾濞| 海南省| 灵川县| 巩义市| 镇赉县| 孟津县| 木里| 隆化县| 蕉岭县|