seller-listing-service
dependences
- { Service } from 'seller-base'
安装
yarn add seller-listing-service
使用
Example:
import { Service } from 'seller-base';
import { CategoryService } from 'seller-listing-service';
Service.$instance.createServiceModule<CategoryService>(CategoryService, 'module-name');
更多示例请参考 src/development/index.ts
按需引入
安装babel-plugin-import
,在babel的plugin中加入这段配置
[require('seller-listing-service/dist/babel-config-for-main-project')]
Seller Center 按需引入
Seller Center 由于是多模块模式,因此需要使用的模块需要修改构建配置
{
externals: [Object.assign(config.getExternalsConfig(), {
'seller-base': config.getExternalsConfig(['@/framework'])['@/framework']
})],
babelPlugin: config.mode === 'production' ? [require('seller-listing-service/dist/babel-config-for-main-project')] : []
}
注意
- 不要修改删除.gitignore中已有部分
- 不要在本项目
local.config.js
加入个人定制的开发环境代码 - 开发一个模块MyService需要创建
src/modules/my-service/index.ts
和 src/modules/my-service/lib/service.ts
至少两个文件,src/modules/my-service/index.ts
不能有默认导出。 - 跨模块引入只能从其他模块入口
index.ts
,不能从其他模块的其他文件引入。 - Constants 作为 MyService 的静态属性,不要额外导出。
src/modules/index.ts
代码不能重命名导入。
开发
开发执行
- CLI准备,参考CLI文档安装部分
- 初始化项目(scc init -d)
- yarn start
构建
构建执行
- CLI准备,参考CLI文档安装部分
- 初始化项目(scc init -b)
- yarn build
Change Logs
从0.0.xx
升级到从0.1.xx
版本,主要的变更如下:
- 重新定义
OriginListProduct
、ListProduct
对象字段,具体可以参考新版本的字段定义(0.0.xx版本的部分字段已去掉)。 - 去除
OriginProductItemModel
、ProductItemModel
类型定义,使用OriginListProductItemModel
、ListProductItemModel
替代。
getProductById
接口将返回OriginProductDetail
对象(0.0.xx版本是OriginProduct
),computedProduct
接口将返回ProductDetail
对象(0.0.xx版本是Product
),返回的对象字段有变更,具体可以参考新版本的字段定义(0.0.xx版本的部分字段已去掉)。updateProducts
接口参数变更为Array<Partial<ProductDetail>>
(0.0.xx版本是Array<ProductUpdateData>
)。
- 去除
ProductHelpers
类型定义,使用ProductHelpers
的接口参数均有变更,seller-listing-service不再支持外部传入user、shop字段。 - 新增
ListingConfig
、ProductConstraints
接口及类型定义。