国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

記錄一次多開關多狀態(tài)情況下結果的設計

qieangel2013 / 2871人閱讀

摘要:最近碰到一個需求有一個頁面有三個認證這三個認證會變更就是說可能這期是認證認證就可以進行下一步但是下期就變成認證了需求希望針對這三個開關做成這樣開關開關開關都有三種狀態(tài)為必須做為選做一個為不做如果三個開關配置成那就代表開關開關都要做開關不用做

最近碰到一個需求,有一個頁面有三個認證,這三個認證會變更.就是說可能這期是認證A,認證B,就可以進行下一步.但是下期就變成B,認證C了.需求希望針對這三個開關做成這樣,開關A,開關B,開關C,都有三種狀態(tài).1,2,3.1為必須做,2,為選做一個.3為不做.如果三個開關配置成:[1,2,3],那就代表開關A,開關B都要做,開關C不用做.(ps: 選擇做一個的是指,如果有兩個開關狀態(tài)都是2,則2選一,如果有3個開關狀態(tài)為2,則3選一.但是如果只有一個開關狀態(tài)為2,則這個必須做).進入下一個頁面的條件就是,這三個開關必須按照配置項做了.

目前設計的方案為:

其中,A,B,C代表三個開關,switch代表開關狀態(tài),flag代表開關是否完成.

代碼實現:

checkField: function () {
  var flagSwitch = true,
      choiceFlag = true;  
 
//這里a,b,c是為了簡單命名的,在這里分別代表含義: 開關A,開關B,開關C
//flag,含義: 是否已經做了開關A,開關B,開關C.statusFlagA,statusFlagB,
//statusFlagC,的取值可能性分別為1,0.(做或者沒做)
//switch,含義: 開關獲取的結果.switchSet[0]代表開關A獲取的結果,switchSet[1]代表開關B獲取的結果,switchSet[2]代表開關C獲取的結果.
 //定義數據結構.
var obj = {
    a: {
        flag: statusFlagA,
        switch: switchSet[0]
    },
    b: {
        flag: statusFlagB,
        switch: switchSet[1]
    },
    c: {
        flag: statusFlagC,
        switch: switchSet[2]
    }
};
//如果開關數組中有一個是可選,則可選標識choiceFlag置為false.
switchSet.forEach(function (elem) {
    if (elem == 2) {
        choiceFlag = false;
    }
});

//遍歷obj,查看obj中數據,進行判斷是否顯示下一步.
["a", "b", "c"].forEach(function (val) {
    if (obj[val].switch == 1) {
        if (!obj[val].flag) {
            flagSwitch = false;
            return false;
        }
    } else if (obj[val].switch == 2) {
        if (!choiceFlag && obj[val].flag == 1) {
            choiceFlag = true;
        }
    }
});
return (flagSwitch && choiceFlag);
},

寫到這里,代碼實現的核心就完了.

                                             翥于2017.9.13簡記

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/91748.html

相關文章

  • javascript單例、代理、狀態(tài)設計模式

    摘要:代理模式代理模式為一個對象提供一個代用品或占位符,以便控制對于它訪問。這種代理就叫虛擬代理。保護代理用于對象應該有不同訪問權限情況。寫時復制代理時虛擬代理的一種變體。 一、創(chuàng)建型設計模式(三大類設計模式) 創(chuàng)建型設計模式 --創(chuàng)建說明該類別里面的設計模式就是用來創(chuàng)建對象的,也就是在不同的場景下我們應該選用什么樣的方式來創(chuàng)建對象。 1. 單例模式 ==單例模式(Singleton)==:...

    0xE7A38A 評論0 收藏0
  • 【程序員】個人職業(yè)發(fā)展規(guī)劃方法論分享(持續(xù)更新)

    摘要:文中涉及到的工具幕布插件番茄工作法助理原則原則是目標管理中的一種方法。作為職業(yè)發(fā)展規(guī)劃的目標來說,一般人最好是制定一個中期的目標,時間長短在半年至三年內。所以這篇旨在分享我在做個人職業(yè)規(guī)劃中的一些心得體會方法論思想等。 2019/07/14 UPDATE 本周想分享一下之前閱讀過的一本書《堅持,一種可以養(yǎng)成的習慣》,這本書主要講的是如何去養(yǎng)成一個習慣,在本次的初期職業(yè)目標的學習計劃中,...

    h9911 評論0 收藏0
  • 2021愛智先行者—記錄一次 Spirit 1 和 IoT Pi 開發(fā)板實戰(zhàn)經歷

    摘要:安裝完成后,在的左下角選擇創(chuàng)建項目,具體操作如下圖所示項目創(chuàng)建頁面會出現很多模板庫,如果只有兩個或者沒有模版,可以嘗試點擊左下角的刷新模板信息按鈕。 目錄 前言 正文 一、IoT Pi 開發(fā)板介紹 二、開發(fā)實戰(zhàn) 1. 連接設備 2. 搭建開發(fā)環(huán)境 3. 開始編碼 4. 編譯打包 5. 安裝應...

    Amos 評論0 收藏0
  • 以小窺大,從一盞路燈看億萬物聯網之路

    摘要:而要實現物物相連,一共有個階段性任務,而這個階段性任務,也伴隨著巨大的挑戰(zhàn)本文分享自華為云社區(qū)云駐共創(chuàng)以小窺大,從一盞路燈看億萬物聯網之路云駐共創(chuàng)以小窺大,從一盞路燈看億萬物聯網之路,作者啟明。 摘要:IoT, Internet of Things,物聯網,顧名思義,是物物相連。而要實現物...

    appetizerio 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<