<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 數據字典裝載器 需要注意裝載器的core\Dict目錄和app\Dict目錄是不同的 **core\Dict** 功能主要是具體的字典的調用方法的定義,相當于功能實現 **app\Dict** 功能主要是各個類型的數據字典的枚舉定義,以及通過core\Dict完成對于第三方開發者定義的擴展數據字典的加載 ``` ├─niucloud niucloud-admin框架核心目錄 │ ├─core │ │ ├─dict │ │ │ ├─BaseDict 數據字典驅動類的基類 │ │ │ ├─DictLoader 數據字典裝載器 │ │ │ ├─Event 事件字典驅動類 │ │ │ ├─Lang 多語言字典驅動類 │ │ │ ├─MemberAccountChangeType 會員賬戶變動類型字典驅動類 │ │ │ ├─Menu 菜單字典驅動類 │ │ │ ├─Notice 消息提醒(模版)字典驅動類 │ │ │ ├─UniappComponent Uniapp端組件字典驅動類 │ │ │ ├─UniappLink Uniapp端超級鏈接字典驅動類 │ │ │ ├─UniappPages Uniapp端頁面字典驅動類 ``` 數據字典裝載器的功能是動態加載第三方開發者開發的功能插件代碼中,定義的數據字典擴展。 數據字典裝載器最終實現數據字典擴展與系統內置數據字典的合并。 系統會自動先加載框架內置數據字典(app\dict),然后附加第三方數據字典項。 BaseDict 是所有數據字典的基類,BaseDict 繼承自 Storage(配置文件驅動類),其他具體類是BaseDict 的子類實現。各個子類的主要職能是實現自己數據字典的加載(Load方法) 最終,系統會通過字典裝載器 DictLoader 完成 各個數據字典的裝載。 如在自定義頁面中,系統會動態加載第三方開發者定義的頁面 代碼 app/dict/diy/PageDict.php文件中,有如下代碼實現 ``` class PageDict { /** * 獲取頁面類型 * @param string $type * @return array|string */ public static function getPageType($type = '') { $system_pages = [ 'DIY_INDEX' => [ 'title' => get_lang('dict_diy.page_index'), 'page' => 'pages/index/index', ], 'DIY_MEMBER_INDEX' => [ 'title' => get_lang('dict_diy.page_member_index'), 'page' => 'pages/member/index', ], 'DIY_PAGE' => [ 'title' => get_lang('dict_diy.page_diy'), 'page' => 'pages/index/diy', ] ]; $pages = (new DictLoader("UniappPages"))->load($system_pages); if (empty($type)) { return $pages; } return $pages[ $type ] ?? ''; } } ``` > $pages = (new DictLoader("UniappPages"))->load($system_pages); 通過以上方法完成了具體的數據字典的擴展。 其他數據字典的使用類似。 一般來說,數據字典裝載器不需要開發者來定義,只需要知道niucloud-admin框架對這一塊的設計就可以了。會按照教程進行具體的業務功能開發就足夠了。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看