@jieyin/editor-sdk 1.1.125 → 1.1.127
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -12
- package/dist/deform.worker.js +428 -393
- package/dist/editor-sdk.es.js +7375 -7187
- package/dist/renderWorker.js +1818 -1757
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -135,7 +135,7 @@ import '@jieyin/editor-sdk/style.css'
|
|
|
135
135
|
| `fileBaseUrl` | `string` | - | 文件资源基础 URL(用于代理/拼接) |
|
|
136
136
|
| `licenseConfig` | `LicenseConfig` | - | License 配置(不传则不做 License 校验) |
|
|
137
137
|
| `fileToken` | `string \| null` | `null` | 文件访问 Token(用于带鉴权的图片/资源) |
|
|
138
|
-
| `onObjectModified` | `(getDiecutStateMap: () =>
|
|
138
|
+
| `onObjectModified` | `(getDiecutStateMap: () => DiecutStateMapResult) => void` | - | 画布内容变更回调,调用 `getDiecutStateMap()` 可得 `{ stateMap, selectedColor, selectedSize }` |
|
|
139
139
|
| `onRenderAllTemplates` | `(renderMethod) => Promise<...>` | - | 自定义「渲染所有模板」逻辑(如上传到服务器) |
|
|
140
140
|
| `onSaveDesign` | `() => void \| Promise<void>` | - | 保存设计(传入则在 Topbar 显示保存按钮) |
|
|
141
141
|
| `onGoHome` | `() => void` | - | 返回首页(传入则在 Topbar 显示返回按钮) |
|
|
@@ -155,16 +155,18 @@ interface EditorOptions {
|
|
|
155
155
|
|
|
156
156
|
### 暴露方法(ref 调用)
|
|
157
157
|
|
|
158
|
+
> **详细入参/出参说明**:见 [API 对接文档](./docs/API-对接文档.md),含 `getDiecutStateMap`、`renderAllTemplates` 等核心方法的入参、出参及对接示例。
|
|
159
|
+
|
|
158
160
|
通过 `ref` 获取组件实例后,可调用以下方法:
|
|
159
161
|
|
|
160
162
|
| 方法 | 说明 |
|
|
161
163
|
| -------------------------------- | ------------------------------------------------------------------------------- |
|
|
162
164
|
| `renderAllTemplates()` | 渲染当前产品下所有模板,返回 `Promise<Array<{ index: number; bitmap: ImageBitmap \| null }>>` |
|
|
163
165
|
| `triggerRenderAllTemplates()` | 触发一次「渲染所有模板」(会走 `onRenderAllTemplates` 若已传) |
|
|
164
|
-
| `getDiecutStateMap()` |
|
|
166
|
+
| `getDiecutStateMap()` | 获取带元数据的设计状态:`{ stateMap, selectedColor, selectedSize }`(用于保存设计) |
|
|
165
167
|
| `getCurrentProductName()` | 获取当前产品名称 |
|
|
166
168
|
| `loadCanvasJson(diecutId, json)` | 按刀版 ID 加载一份画布 JSON |
|
|
167
|
-
| `loadDesignStateMap(
|
|
169
|
+
| `loadDesignStateMap(payload)` | 还原设计:支持 `{ stateMap, selectedColor?, selectedSize? }` 或旧格式 `Record<diecutId, fabricJson>` |
|
|
168
170
|
|
|
169
171
|
示例:
|
|
170
172
|
|
|
@@ -180,13 +182,13 @@ import { Editor } from '@jieyin/editor-sdk'
|
|
|
180
182
|
const editorRef = ref<InstanceType<typeof Editor> | null>(null)
|
|
181
183
|
|
|
182
184
|
async function save() {
|
|
183
|
-
const
|
|
185
|
+
const result = editorRef.value?.getDiecutStateMap?.()
|
|
184
186
|
const name = editorRef.value?.getCurrentProductName?.()
|
|
185
|
-
//
|
|
187
|
+
// result 为 { stateMap, selectedColor, selectedSize },上传到后端...
|
|
186
188
|
}
|
|
187
189
|
|
|
188
|
-
async function restore(stateMap: Record<string, unknown>) {
|
|
189
|
-
editorRef.value?.loadDesignStateMap?.(
|
|
190
|
+
async function restore(payload: { stateMap: Record<string, unknown>; selectedColor?: string; selectedSize?: string } | Record<string, unknown>) {
|
|
191
|
+
editorRef.value?.loadDesignStateMap?.(payload)
|
|
190
192
|
}
|
|
191
193
|
</script>
|
|
192
194
|
```
|
|
@@ -328,10 +330,10 @@ Editor 内部由多个 composable 组成(产品数据、模板、刀版、画
|
|
|
328
330
|
const editorRef = ref<InstanceType<typeof Editor> | null>(null)
|
|
329
331
|
|
|
330
332
|
async function onSaveDesign() {
|
|
331
|
-
const
|
|
333
|
+
const result = editorRef.value?.getDiecutStateMap?.()
|
|
332
334
|
const productName = editorRef.value?.getCurrentProductName?.()
|
|
333
|
-
if (!stateMap) return
|
|
334
|
-
await saveDesignTask({ productName,
|
|
335
|
+
if (!result?.stateMap) return
|
|
336
|
+
await saveDesignTask({ productName, ...result })
|
|
335
337
|
}
|
|
336
338
|
```
|
|
337
339
|
|
|
@@ -342,10 +344,10 @@ async function onSaveDesign() {
|
|
|
342
344
|
2. 若用 `stateMap`:先让 Editor 完成模板加载(产品、刀版、变形数据就绪),在 `onTemplateReady` 中调用:
|
|
343
345
|
|
|
344
346
|
```ts
|
|
345
|
-
editorRef.value?.loadDesignStateMap?.(
|
|
347
|
+
editorRef.value?.loadDesignStateMap?.(payload)
|
|
346
348
|
```
|
|
347
349
|
|
|
348
|
-
3. 若用 `completeJsonUrl`:在 `onTemplateReady` 中 fetch 该 JSON
|
|
350
|
+
3. 若用 `completeJsonUrl`:在 `onTemplateReady` 中 fetch 该 JSON,解析成 `{ stateMap, selectedColor?, selectedSize? }` 或旧格式的 stateMap,再调用 `loadDesignStateMap(payload)`。
|
|
349
351
|
|
|
350
352
|
### License 配置
|
|
351
353
|
|