47 lines
1.2 KiB
Markdown
47 lines
1.2 KiB
Markdown
|
|
---
|
|||
|
|
name: jjb-cloud-component-dependencies
|
|||
|
|
description: 定义 JJB 云组件依赖管理规范。在配置 dependencies、自定义依赖或覆盖默认依赖时查阅。
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 云组件使用规范
|
|||
|
|
|
|||
|
|
## 依赖管理
|
|||
|
|
|
|||
|
|
## 默认内置依赖
|
|||
|
|
|
|||
|
|
所有云组件都可以直接使用以下依赖,无需手动传递:
|
|||
|
|
|
|||
|
|
- `react` - React 库
|
|||
|
|
- `react-dom` - React DOM 库
|
|||
|
|
- `@cqsjjb/jjb-common-lib` - 通用工具库(同时提供 `jjbCommonLib` 别名)
|
|||
|
|
|
|||
|
|
## 自定义依赖
|
|||
|
|
|
|||
|
|
```javascript
|
|||
|
|
import React from 'react';
|
|||
|
|
import lodash from 'lodash';
|
|||
|
|
import moment from 'moment';
|
|||
|
|
import CloudComponent from '@cqsjjb/jjb-cloud-component/CloudComponent';
|
|||
|
|
|
|||
|
|
function MyPage() {
|
|||
|
|
return (
|
|||
|
|
<CloudComponent
|
|||
|
|
from="https://example.com/my-component.js"
|
|||
|
|
componentKey="my-component"
|
|||
|
|
dependencies={{
|
|||
|
|
// 自定义依赖,会与默认依赖合并
|
|||
|
|
'lodash': lodash,
|
|||
|
|
'moment': moment,
|
|||
|
|
// 同名依赖会覆盖默认依赖
|
|||
|
|
'react': customReact
|
|||
|
|
}}
|
|||
|
|
/>
|
|||
|
|
);
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**注意**:
|
|||
|
|
- 用户自定义依赖会与默认依赖合并
|
|||
|
|
- 同名依赖会被用户自定义依赖覆盖
|
|||
|
|
- 依赖值可以是函数引用(如 `require()` 的结果)或任何 JavaScript 对象
|