UNPKG

@alicloud/console-conf-link-factory

Version:
44 lines (28 loc) 1.54 kB
# @alicloud/console-conf-link-factory 渠道链接标准生产工厂 注意:OneConsole 应用请直接使用 `@alicloud/console-one-conf` ## Usage ### 创建 `confLink` 方法 ```typescript 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` 对象,这有如下好处: 1. 你若使用的是 TS,则不可能传错 key,传错则报错 2. 即使没有 viper 的输出,你的应用也是完整可运行的 3. 你大可不必一定在 Viper 上写全部的链接(当然写全更好) ### 使用 `confLink` 方法 ```typescript 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`