2020最新国产在线不卡a-爱看女同中文字幕av-国产大秀视频在线一区二区-大香蕉手机在线最新视频

石家莊網站開發(fā) 石家莊網站開發(fā)公司

資訊動態(tài)

察而思、思而行、行而后語、知行合一

「Vue 實用技巧」策略模式實現動態(tài)表單驗證

發(fā)布時間:2019-09-09 熱度:

  在 Vue 的使用過程中會遇到各種場景,當普通使用時覺得沒什么,但是或許優(yōu)化一下可以更高效更優(yōu)美地進行開發(fā)。接下來就由石家莊網站建設工程師講解日常開發(fā)用到的小技巧。

  策略模式 (Strategy Pattern)又稱政策模式,其定義一系列的算法,把它們一個個封裝起來,并且使它們可以互相替換。封裝的策略算法一般是獨立的,策略模式根據輸入來調整采用哪個算法。關鍵是策略的實現和使用分離。

  1. 你曾見過的策略模式

  現在電子產品種類繁多,尺寸多種多樣,有時候你會忍不住想拆開看看里面啥樣(想想小時候拆的玩具車還有遙控器),但是螺絲規(guī)格很多,螺絲刀尺寸也不少,如果每碰到一種規(guī)格就買一個螺絲刀,家里就得堆滿螺絲刀了。所以現在人們都用多功能的螺絲刀套裝,螺絲刀把只需要一個,碰到不同規(guī)格的螺絲只要換螺絲刀頭就行了,很方便,體積也變小很多。

  2. 實例的代碼實現

  具體的例子我們用編程上的例子來演示,比較好量化。

  場景是這樣的,某個電商網站希望舉辦一個活動,通過打折促銷來銷售庫存物品,有的商品滿 100 減 30,有的商品滿 200 減 80,有的商品直接8折出售,這樣的邏輯交給我們,我們要怎樣去實現呢?

 

  通過判斷輸入的折扣類型來計算商品總價的方式,幾個 if-else 就滿足了需求,但是這樣做法的缺點也很明顯:

  priceCalculate 函數隨著折扣類型的增多, if-else 判斷語句會變得越來越臃腫;

  如果增加了新的折扣類型或者折扣類型的算法有所改變,那么需要更改 priceCalculate 函數的實現,這是違反開放-封閉原則的;

  可復用性差,如果在其他的地方也有類似這樣的算法,但規(guī)則不一樣,上述代碼不能復用;

  我們可以改造一下,將計算折扣的算法部分提取出來保存為一個對象,折扣的類型作為 key,這樣索引的時候通過對象的鍵值索引調用具體的算法:

  算法就被隱藏起來,并且預留了增加策略的入口,便于擴展。

  以上關于Vue 使用中的小技巧屬于石家莊網站建設工程師的個人觀點,大家如果對此有著不同的見解,可以關注公眾號“尚武科技派”給我留言,大家可以交流一下自己的心德體會,共同學習進步。

聯(lián)系尚武科技
客戶服務
石家莊APP開發(fā)
400-666-4864
為您提供售前購買咨詢、解決方案推薦等1V1服務!
技術支持及售后
石家莊APP開發(fā)公司
0311-66682288
為您提供從產品到服務的全面技術支持 !
客戶服務
石家莊小程序開發(fā)
石家莊小程序開發(fā)公司
加我企業(yè)微信
為您提供售前購買咨詢、
解決方案推薦等1V1服務!
石家莊網站建設公司
咨詢相關問題或預約面談,可以通過以下方式與我們聯(lián)系。
石家莊網站制作
在線聯(lián)系:
石家莊Web開發(fā)
石家莊軟件開發(fā)
石家莊軟件開發(fā)公司
ADD/地址:
河北·石家莊
新華區(qū)西三莊大街86號河北互聯(lián)網大廈B座二層
Copyright ? 2008-2025尚武科技 保留所有權利。 冀ICP備12011207號-2 石家莊網站開發(fā)冀公網安備 13010502001294號《互聯(lián)網平臺公約協(xié)議》
Copyright ? 2025 dachencms.com, Inc. All rights reserved