[TOC]
* * * * *
# 1 Inferno模塊包
## .1 包目錄
~~~
packages/inferno/
dist\ ;打包生成目錄
src\ ;實現目錄
inferno.js ;入口文件
~~~
## .2 包入口
~~~
;包聲明的Inferno模塊入口文件
packages/inferno/src/index.js
import { createBlueprint, createVNode }from '../../../src/core/createBlueprint';
import { createUniversalElement } from '../../../src/core/universal';
;導出模塊接口
export default {
createBlueprint,
createVNode,
universal: {
createElement: createUniversalElement
}
};
~~~
# 2 Inferno源代碼
## .1 源代碼文件
~~~
src\core\
createBuleprint.js ;createBuleprint.js入口文件
universal.js ;universal.js入口文件
utils.js ;Inferno模塊工具
~~~
## .2 createBuleprint.js文件依賴
~~~
src\core\createBuleprint.js
;導入模塊工具utils.js
import { isNullOrUndefined } from './utils';
;導出createVNode() createBlueprint()接口
export function createVNode();
export function createBlueprint();
~~~
## .3 universal.js文件依賴
~~~
src\core\universal.js
;導入模塊工具utils.js
import { isAttrAnEvent, isNullOrUndefined } from './utils';
;導出createUniversalElement()接口
export function createUniversalElement()
~~~
# 3 Inferno模塊接口
~~~
packages/inferno/dist/inferno.js
;導出三個接口
;createBlueprint()
;createVNode()
;universal.createElement()
var index = {
createBlueprint: createBlueprint,
createVNode: createVNode,
universal: {
createElement: createUniversalElement
}
};
return index;
~~~
# 4 Inferno模塊測試目錄
~~~
~~~
- 框架概述
- 框架目錄
- 總目錄(inferno-master)
- 配置目錄(config)
- 示例目錄(examples)
- 包目錄(packages)
- 源代碼目錄(src)
- 工具目錄(tools)
- 其他文件
- 框架結構
- (0)依賴關系
- (1)Inferno模塊
- (2)InfernoDOM模塊
- (3)InfernoServer模塊
- (4)InfernoComponent模塊
- (5)InfernoTestUtils模塊
- (6)InfernoCreateElement模塊
- (7)InfernoRouter模塊
- 框架實現
- (1)Router
- (2)Redux
- (3)Component
- (4)CreateElement
- (5)Core(Vnode)
- (6)Dom(Render)
- (7)Server
- (8)TestUtils
- (9)Utils
- 框架流程
- 框架示例
- 框架更新
- 基礎原理
- 框架總結