跳到主要内容

preFetchLib

preFetchLib负责拉取并返回远程模块,远程模块通过对接 hel-lib-proxy 包的 exposeLib 接口弹射出去。

面向模块使用方

该接口由模块使用方直接调用,可以基于此接口进一步封装到其他依赖注入框架或体系里

基本用法

指定模块名

通过指定模块名称拉取模块,默认总是拉取最新版本,如当前用户在灰度名单里,则返回灰度版本

const lib = await preFetchLib('hel-tpl-remote-lib');
// lib.xxx 此处可以调用模块任意方法

指定版本号

参数名称IPreFetchLibOptions.versionId

通过指定模块名称、版本号拉取模块

const lib = await preFetchLib('hel-tpl-remote-lib', { versionId: '1.0.0' });
// or
const lib = await preFetchLib('hel-tpl-remote-lib', '1.0.0');
未指定版本号情况

未指定特殊的版本号情况下,preFetchLib 将拉取最新的版本

指定平台值

参数名称IPreFetchLibOptions.platform

通过指定模块名称、版本号、平台拉取模块,默认是unpkg, 当用户独立部署了Hel Pack服务并需要跨多个平台获取模块时,需指定平台值

const lib = await preFetchLib('hel-tpl-remote-lib', {
versionId: 'hel-tpl-remote-lib_20220522003658',
platform: 'hel',
});
属性
类型
默认值
描述
platformstring'unpkg'指定获取模块元数据的平台
versionIdstringundefined指定拉取的版本号, 对于 unpkg 服务来说,版本号级 package.json 里的 version 值
未指定版本的话,总是拉取最新版本模块元数据,如当前用户在灰度名单里,则拉取灰度版本模块元数据
appendCssbooleantrue是否追加模块样式链接到 html 文档里
cssAppendTypesCssAppendType[]['static', 'build', 'relative']该配置项在 appendCss 为 true 时有效,表示按要附加哪几种类型的 css 链接到 html 文档上
'static' 表示静态 css 链接文件
'build' 表示每次构建新生成的 css 文件
apiMode'get' | 'jsonp''jsonp'api 请求方式
enableDiskCachebooleanfalse是否开启硬盘缓存

文档正在拼命建设中,有疑问可联系 fantasticsoul 或提 issue,关注我的掘金主页了解更多 ...