@alicloud/console-conf-link-factory
v1.3.4
Published
控制台配置平台 Viper - 渠道链接 - 工厂方法
Downloads
39
Readme
@alicloud/console-conf-link-factory
渠道链接标准生产工厂
注意:OneConsole 应用请直接使用 @alicloud/console-one-conf
Usage
创建 confLink
方法
import confLinkFactory from '@alicloud/console-conf-link-factory';
import defaultLink from './default-link';
export default confLinkFactory(defaultLink);
注意:默认 link 中的插值是 [...]
,这意味着链接的值可能是这样 //....com/path/[param1]?p=[param2]
,你可以在调用 confLinkFactory
的时候传第二个参数修改成你喜欢的方式(目前不支持多种类型)。
请一定传一个在你应用下全量的链接 key-value
对象,这有如下好处:
- 你若使用的是 TS,则不可能传错 key,传错则报错
- 即使没有 viper 的输出,你的应用也是完整可运行的
- 你大可不必一定在 Viper 上写全部的链接(当然写全更好)
使用 confLink
方法
import confLink from 'path-to-conf-link';
// 某个地方
const link = confLink('xxx:yyy'); // TS 下这里绝不会写错
const link2 = confLink('xxx:yyy_{id}', {
id: 'xxx' // 带插值
});
最佳实践
- 在应用中有一份完整的链接兜底
- 链接的
key
遵循snake_case
,如果有namespace
的概念,可以考加两条下划线如namespace__xx_yy
- 链接的
key
需要能够反映这个链接个功能,更要反映它需要的插值参数,比如product__document_[id]
,表明它是产品的文档地址,且需要参数id