initMVVM<VM extends BaseViewModel<BaseModel, BaseEntity> > function
void
initMVVM<VM extends BaseViewModel<BaseModel, BaseEntity> >(
- List<
BaseModel> models, { - int initPage = 1,
- DataFromNetworkOrDatabase? dataOfHttpOrData,
- VSBuilder<
VM> ? busy, - VSBuilder<
VM> ? empty, - VSBuilder<
VM> ? error, - VSBuilder<
VM> ? unAuthorized, - VSBuilder<
VM> ? listDataEmpty, - ResetRefreshState? resetRefreshState,
- FinishRefresh? finishRefresh,
- ResetLoadState? resetLoadState,
- FinishLoad? finishLoad,
- ControllerBuild? controllerBuild,
- num? height,
- num? width,
初始化 配置初始页面全局状态页
Implementation
void initMVVM<VM extends BaseViewModel>(
List<BaseModel> models, {
int initPage = 1,
DataFromNetworkOrDatabase? dataOfHttpOrData,
VSBuilder<VM>? busy, //全局状态配置
VSBuilder<VM>? empty, //全局状态配置
VSBuilder<VM>? error, //全局状态配置
VSBuilder<VM>? unAuthorized, //全局状态配置
VSBuilder<VM>? listDataEmpty, //全局状态配置
ResetRefreshState? resetRefreshState,
FinishRefresh? finishRefresh,
ResetLoadState? resetLoadState,
FinishLoad? finishLoad,
ControllerBuild? controllerBuild,
num? height, // 高度
num? width, // 宽度
}) {
/// 载入model 后期调用API
models.insert(0, BaseModel());
addModel(list: models);
initPageSize(width?.toDouble(), height?.toDouble());
BaseListViewModel.pageFirst = initPage;
if (busy != null) ViewConfig.gBusy = busy as VSBuilder;
if (empty != null) ViewConfig.gEmpty = empty as VSBuilder;
if (error != null) ViewConfig.gError = error as VSBuilder;
if (unAuthorized != null) {
ViewConfig.gunAuthorized = unAuthorized as VSBuilder;
}
if (listDataEmpty != null) {
ViewConfig.gListDataEmpty = listDataEmpty as VSBuilder;
}
dataOfHttpOrData ??= (vm) => true;
BaseViewModel._dataFromNetworkOrDatabase = dataOfHttpOrData;
if (resetRefreshState != null) {
BaseListViewModel._resetRefreshState = resetRefreshState;
}
if (finishRefresh != null) BaseListViewModel._finishRefresh = finishRefresh;
if (resetLoadState != null) {
BaseListViewModel._resetLoadState = resetLoadState;
}
if (finishLoad != null) BaseListViewModel._finishLoad = finishLoad;
if (controllerBuild != null) {
BaseListViewModel._controllerBuild = controllerBuild;
}
}