neo-cmp-cli 1.8.0 → 1.8.2

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 CHANGED
@@ -243,9 +243,93 @@ module.exports = {
243
243
 
244
244
  ### 3. 使用平台实体数据源
245
245
 
246
- 可使用 OpenAPI SDK 对接平台实体数据源,详细使用方法见 [neo-open-api](https://www.npmjs.com/package/neo-open-api)。
246
+ 可在自定义组件中使用 OpenAPI SDK 对接平台实体数据源,详细使用方法见 [neo-open-api](https://www.npmjs.com/package/neo-open-api)。
247
+
248
+ ```typescript
249
+ import { xObject } from 'neo-open-api';
250
+
251
+ // 查询联系人列表
252
+ const {data: contacts} = await xObject.query({
253
+ xObjectApiKey: 'Contact',
254
+ fields: ['name', 'phone', 'email'],
255
+ page: 1,
256
+ pageSize: 20,
257
+ orderBy: 'createdAt desc'
258
+ });
259
+
260
+ // 创建新联系人
261
+ const {data: newContact} = await xObject.create('Contact', {
262
+ data: {
263
+ name: '王五',
264
+ phone: '13700137000',
265
+ email: 'wangwu@example.com'
266
+ }
267
+ });
268
+
269
+ // 更新联系人
270
+ const {data: updatedContact} = await xObject.update('Contact', newContact.id, {
271
+ data: {
272
+ name: '王五(更新)'
273
+ }
274
+ });
275
+
276
+ // 获取联系人详情
277
+ const {data: contactDetail} = await xObject.get('Contact', newContact.id);
278
+
279
+ // 删除联系人
280
+ await xObject.delete('Contact', newContact.id);
281
+ ```
282
+
283
+
284
+ ### 4. 使用平台自定义API
285
+
286
+ 可在自定义组件中使用 OpenAPI SDK 对接平台自定义API,详细使用方法见 [neo-open-api](https://www.npmjs.com/package/neo-open-api)。
287
+
288
+ ```typescript
289
+ import { customApi } from 'neo-open-api';
290
+
291
+ // 基本用法
292
+ const result = await customApi.run({
293
+ apiUrl: '/rest/custom/api/endpoint', // 自定义API地址
294
+ methodType: 'POST', // 请求方法,如 'GET', 'POST', 'PUT', 'DELETE' 等(可选,默认为 'POST')
295
+ data: { // 请求数据
296
+ key1: 'value1',
297
+ key2: 'value2'
298
+ }
299
+ });
300
+ ```
301
+
302
+ **参数说明:**
303
+ - `apiUrl`: 自定义API的完整地址(必填)
304
+ - `methodType` 或 `method`: 请求方法,默认为 'POST'
305
+ - `data`: 请求数据对象,会被包装在 `data` 字段中发送
306
+
307
+ **返回结果:**
308
+ ```typescript
309
+ {
310
+ status: boolean, // 返回 true 表示执行成功
311
+ code: number | string, // 返回码
312
+ msg: string, // 一般用于返回错误信息
313
+ data: any // API返回的数据
314
+ }
315
+ ```
316
+
317
+ **使用示例:**
318
+ ```typescript
319
+ import { customApi } from 'neo-open-api';
320
+
321
+ // 执行自定义API
322
+ const result = await customApi.run({
323
+ apiUrl: '/rest/custom/api/processData',
324
+ methodType: 'POST',
325
+ data: {
326
+ param1: 'value1',
327
+ param2: 'value2'
328
+ }
329
+ });
330
+ ```
247
331
 
248
- ### 4. 默认复用平台第三方依赖
332
+ ### 5. 默认复用平台第三方依赖
249
333
 
250
334
  自定义组件构建过程中默认会剔除掉平台已有依赖模块(比如 antd、echarts、axios、lodash 等),确保自定义组件构建后的资源体积较小。
251
335
 
@@ -276,7 +360,7 @@ module.exports = {
276
360
 
277
361
  > **注意**:自定义组件中请使用依赖包支持的版本,如版本不匹配运行时可能出现异常。
278
362
 
279
- ### 5. 本地调试自定义组件
363
+ ### 6. 本地调试自定义组件
280
364
 
281
365
  #### 步骤 1:启动外链调试模式
282
366
 
@@ -294,7 +378,7 @@ neo linkDebug
294
378
 
295
379
  页面设计器开启 debug 模式后,左侧会展示**外部链接**管理面板。将第 1 步生成的「外链脚本地址」添加进来,即可在此页面设计器 / 组件物料面板中看到对应自定义组件。
296
380
 
297
- ### 6. 发布自定义组件至 NeoCRM
381
+ ### 7. 发布自定义组件至 NeoCRM
298
382
 
299
383
  执行 `neo push cmp` 即可构建并发布自定义组件至 NeoCRM 平台,其构建后资源也会上传到 NeoCRM 平台端提供的 CDN 中。
300
384
 
@@ -342,7 +426,7 @@ A: 请检查 `neo.config.js` 文件中是否配置了 `neoConfig.auth`,确保
342
426
 
343
427
  发布成功后,即可在对应租户环境下的页面设计器和表单设计器中使用此自定义组件。
344
428
 
345
- ### 7. 拉取线上自定义组件至本地项目
429
+ ### 8. 拉取线上自定义组件至本地项目
346
430
 
347
431
  执行 `neo pull cmp` 即可从 NeoCRM 平台拉取自定义组件源码到当前项目。该命令会将线上自定义组件的源码下载并解析到当前项目的 `src/components` 目录下。
348
432
 
@@ -370,7 +454,7 @@ neo pull cmp -n xxCmp
370
454
  - 如果组件源码中包含新增的依赖包,拉取完成后会提示执行 `npm install` 或 `yarn install`
371
455
  - zip 源文件会保留在 `.neo-cli/zip-source` 目录下,可手动删除
372
456
 
373
- ### 8. 删除线上自定义组件
457
+ ### 9. 删除线上自定义组件
374
458
 
375
459
  执行 `neo delete cmp` 即可从 NeoCRM 平台删除指定的自定义组件。该命令会删除平台上的自定义组件,删除后该组件将无法在页面设计器和表单设计器中使用。
376
460
 
@@ -397,7 +481,7 @@ neo delete cmp -n xxCmp
397
481
  - ⚠️ **影响范围**:删除组件后,所有使用该组件的页面和表单将受到影响,请确保没有正在使用的场景
398
482
  - 💡 **建议先备份**:删除前建议先使用 `neo pull cmp` 拉取组件源码到本地进行备份
399
483
 
400
- ### 9. 发布自定义组件至 CDN
484
+ ### 10. 发布自定义组件至 CDN
401
485
 
402
486
  执行 `neo publish2oss` 即可构建对应自定义组件,并自动将构建后资源上传到对象存储(OSS)中。
403
487
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "neo-cmp-cli",
3
- "version": "1.8.0",
4
- "description": "前端脚手架:自定义组件开发工具,支持react 和 vue2.0技术栈。",
3
+ "version": "1.8.2",
4
+ "description": "Neo 自定义组件开发工具,支持react 和 vue2.0技术栈。",
5
5
  "keywords": [
6
6
  "neo-cli",
7
7
  "自定义组件开发工具"
@@ -34,10 +34,10 @@
34
34
  },
35
35
  "repository": {
36
36
  "type": "git",
37
- "url": "https://git@github.com:wibetter/neo-cmp-cli.git"
37
+ "url": "https://github.com/xsy-neoui/neo-cmp-cli.git"
38
38
  },
39
39
  "bugs": {
40
- "url": "https://github.com/wibetter/neo-cmp-cli/issues"
40
+ "url": "https://github.com/xsy-neoui/neo-cmp-cli/issues"
41
41
  },
42
42
  "dependencies": {
43
43
  "adm-zip": "^0.5.10",
@@ -17,9 +17,9 @@ export class DataDashboardModel {
17
17
  // 分类标签,用于设置在编辑器左侧组件面板哪个分类中展示(可设置多个分类标签)
18
18
  // tags: string[] = ['仪表板'];
19
19
 
20
- /**
20
+ /**
21
21
  * 用于设置组件支持的页面类型
22
- *
22
+ *
23
23
  * 当前 NeoCRM 平台存在的页面类型:
24
24
  * all: 1 全页面
25
25
  * indexPage: 2 首页
@@ -17,9 +17,9 @@ export class InfoCardModel {
17
17
  // 分类标签,用于设置在编辑器左侧组件面板哪个分类中展示(可设置多个分类标签)
18
18
  // tags: string[] = ['自定义组件'];
19
19
 
20
- /**
20
+ /**
21
21
  * 用于设置组件支持的页面类型
22
- *
22
+ *
23
23
  * 当前 NeoCRM 平台存在的页面类型:
24
24
  * all: 1 全页面
25
25
  * indexPage: 2 首页