多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[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模块测试目录 ~~~ ~~~