前言
在這個前端技術爆炸的時代,不自己寫套開源框架出門都不好意思跟別人說自己搞前端。去年年初接觸的react,16年7月份在github開源了一套針對react、redux探索的項目,近期和伙伴們一起重構了這個項目,等待大伙拍磚。。。搞不明白為什么一發布到首頁區就會被移除。。。
框架介紹
- mk框架 = monkey king框架 = 齊天大聖框架
- 基礎技術棧:react、redux、immutable、antd、webpack、nodejs、hapi、sequelize、node-zookeeper-dubb等
- 框架核心思想:js全棧、應用化
介紹網址
https://ziaochina.github.io/mk-docs
特點
- 將網站分成多個獨立app,每個app開發模式完全一致,並且可以克隆npmjs發布模板app
- 將后台服務分成多個獨立service, 每個servie開發模式完全一致, 並且可以克隆npmjs發布的模板service
- 開發者自己做的app,service可以發布到npmjs開源給其他開發者使用,成為一個生態化的框架
使用
- 步驟一、使用mk命令建立網站
$ npm i -g mk-tools //安裝mk $ mk website my-demo && cd my-demo //創建空網站 $ mk clone mk-app-root apps/ //克隆root應用 $ mk clone mk-app-login apps/ //克隆登錄應用 $ mk clone mk-app-portal apps/ //克隆門戶應用 $ mk clone mk-app-person-list apps/ //克隆列表應用 $ mk clone mk-app-person-card apps/ //克隆卡片應用 $ mk clone mk-app-complex-table apps/ //克隆復雜表格應用 $ mk clone mk-app-editable-table apps/ //克隆可編輯表格應用 $ mk clone mk-app-tree-table apps/ //克隆左樹右表應用 $ mk compile website //編譯網站
- 步驟二、配置
//修改文件:my-demo/config.js //也可以直接進apps目錄根據自己需求修改app內容 ... _options.apps && _options.apps.config({ //'*': { webapi } //正式網站應該有一個完整webapi對象,提供所有web請求函數 'mk-app-root': { startAppName: 'mk-app-login' }, 'mk-app-login': { goAfterLogin: { appName: 'mk-app-portal' } }, 'mk-app-portal': { menu: [{ key: '1', name: 'about', appName: 'mk-app-portal-about', isDefault: true }, { key: '2', name: 'apps', isExpand: true, children: [{ key: '201', name: '列表', appName: 'mk-app-person-list' }, { key: '202', name: '卡片', appName: 'mk-app-person-card' },{ key:'203', name:'復雜表格', appName: 'mk-app-complex-table' },{ key:'204', name:'可編輯表格', appName: 'mk-app-editable-table' },{ key:'205', name:'樹表', appName: 'mk-app-tree-table' },{ key: '206', name: '柱狀圖', appName: 'mk-app-bar-graph' }] }] } }) ...
- 步驟三、按需修改代碼,實現自己功能要求
- 步驟四、運行 npm start
DEMO截圖
按照上面的步驟可以得到如下截圖樣子的一個網站
可以在線訪問我已經做好的一個demo,網址:https://ziaochina.github.io/mk-demo