Home > @elux/model > exportModule
exportModule() function
向外封装并导出Module
Signature:
export declare function exportModule<TModuleName extends string, TModel extends CommonModel, TComponents extends {
[componentName: string]: EluxComponent | AsyncEluxComponent;
}, D>(moduleName: TModuleName, ModelClass: CommonModelClass<TModel>, components: TComponents, data?: D): {
moduleName: TModuleName;
ModelClass: CommonModelClass;
state: TModel['state'];
actions: PickModelActions<TModel>;
components: ReturnComponents<TComponents>;
data: D;
};
Parameters
Parameter | Type | Description |
---|---|---|
moduleName | TModuleName | 模块名称,不能重复 |
ModelClass | CommonModelClass<TModel> | Model构造类 |
components | TComponents | 导出的组件或视图,参见 exportView() |
data | D | 导出其它任何数据 |
Returns:
{ moduleName: TModuleName; ModelClass: CommonModelClass; state: TModel['state']; actions: PickModelActions<TModel>; components: ReturnComponents<TComponents>; data: D; }
返回实现 CommonModule 接口的微模块
Example
import UserModel from './model';
import MainView from './views/Main';
exportModule('user', UserModel, {main: MainView, list: ()=>import('./views/List')})