directorjs和requirejs和artTemplate模板引擒創建的SPA框架

分爲4塊:
A : index.html殼子。    加載B  init-config.js,   加載D  header.html模板
B : init-config.js 我的信息+路由配置+權限+渲染單頁。        加載C  navMenu.js
C: navMenu.js 處理頭部+處理中間模板+總菜單。返回給B  init-config.js 
D: header.html模板。模板的做用,整個頁面大部分除掉單頁

css

A:Index.html:

一個空殼子,這個上面include進:header.html,   require.js,    init-config.js,   html

加進了全部的css,,,,配置了gulp打包的build,替換壓縮後的文件,加入了百度統計gulp

 

B:init-config.js

這個配置了:瀏覽器

Require.js的配置config
路由的map( 鍵 和 path路徑+permission),架構

拿用戶信息接口,返回了用戶角色,姓名,權限碼,存全局變量ui

Director.jsinit方法,初始化路由spa

方法1,將路由map轉化爲對象,規則爲:/aaa:function(){},-方法,,鍵方法對,組合規則是directors的用法設計

方法2,即路由鍵對應的執行方法,當瀏覽器地址欄出現某/hash值的時候,獲取此hash的路由map條目,拿到permissioncdn

用戶接口返回值判斷是否登陸-----ssohtm

判斷權限(permission與用戶接口權限碼,利用shiro-trie------403頁,

去執行navMenujs拿到返回值-----》中間模板right。執行init方法(C模板介紹見後)

Ajax請求mappath路徑的單頁面,-------》渲染單頁,根據right,是right.html(單頁)

CommonBus.html(單頁),這個根據頁面挖空的結構來。

 

CnavMenuJs

配置全部工程的https//域名./

配置全部的菜單

清空container元素,移除全部監聽

頭部,登陸,退出,用戶名,遊客的顯示處理,監聽登陸/退出事件,-----sso/首頁

渲染頭部模板,根據默認總菜單

渲染中間模板

渲染中間模板根據方法X

方法X:根據init傳來的hashwindow得來,拿到全部的一級菜單,二級菜單,三級菜單

Dheader.html

全部二級菜單即各個工程,全部的頁面,

整個頁面(頭部導航+中間模板(麪包屑+左側三級菜單等等))大部分都是這裏拼的模板

架構

NavMenu.js全部工程公用,配置了總工程的菜單總表

單個工程如:investorinit-config.js只配置本身的map路由表

每一個工程都有一個相同殼子A模塊,每一個工程有一個域名,每一個工程有本身的路由表,每一個工程有init-configJs

 

即:A模塊B模塊各子工程具備本身的

C模塊D模塊公用,放cdn

C模塊只做一個模塊,define(‘C模塊名’,【引用】,function(){};amd規範

D模塊:公用,包括了各子工程的模板,nevMenu會根據哪一個工程,渲染哪一個工程的模板

頭部導航幾乎全部子工程能夠公用模板。可是各子工程中間塊設計不同,全部有各自的中間模板。

相關文章
相關標籤/搜索