Product Library
1. Feature Overview
This module provides product display and interaction functionality within the live room, including retrieving product lists, product tags, etc.
2. API Methods
2.1 Retrieve Product List from Product Library
API Method: getProductListByShowId(params?: GetProductListParams): Promise<ProductListData>
Parameter Description:
- params: undefined, type
GetProductListParams, optional
Return Value Description: Product list data, type Promise<ProductListData>
Example:
// 获取商品列表
const res = await watchCore.product.getProductListByShowId();
console.log('商品列表', res.content);
2.2 Retrieve Product List by Tag ID
API Method: getProductListByTagId(params: GetProductListByTagParams): Promise<ProductListPageData>
Parameter Description:
- params: Query parameters, type
GetProductListByTagParams, required
Return Value Description: Paginated product list data, type Promise<ProductListPageData>
Example:
// 获取指定标签的商品
const res = await watchCore.product.getProductListByTagId({
tagId: '123456'
});
console.log('商品总数', res.totalItems);
console.log('当前页码', res.pageNumber);
console.log('总页数', res.totalPages);
console.log('商品列表', res.contents);
2.3 Retrieve Product Tag List
API Method: getProductLabelList(params: GetProductLabelListParams): Promise<ProductLabelListData>
Parameter Description:
- params: Retrieval parameters, type
GetProductLabelListParams, required. Detailed type description is as follows:
| Parameter Name | Description | Type | Required | Default Value |
|---|---|---|---|---|
pageNumber |
Page number | number |
No | - |
pageSize |
Page size | number |
No | - |
Return Value Description: Product tag list data, type Promise<ProductLabelListData>. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
pageNumber |
- | number |
pageSize |
- | number |
totalPages |
- | number |
totalItems |
- | number |
contents |
- | ProductLabelItem[] |
Example:
// 获取商品分类标签
const res = await watchCore.product.getProductLabelList({});
console.log('标签总数', res.totalItems);
console.log('当前页码', res.pageNumber);
console.log('总页数', res.totalPages);
console.log('标签列表', res.contents);
2.4 Send Product Click-to-Buy Event
Description: Called when a user clicks the product purchase button, used for tracking analytics and displaying purchase effects.
API Method: sendClickBuy(good: ProductData): void
Parameter Description:
- good: Product data, type
ProductData, required
Example:
// 用户点击购买商品
watchCore.product.sendClickBuy(productData);
3. Module Events
3.1 Product Shelved Event
Description: Triggered when a product is put on the shelf.
Event: ProductEvents.OnShelfProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | ProductData |
Example:
watchCore.product.eventEmitter.on(ProductEvents.OnShelfProduct, (data) => {
console.log('商品已上架', data.productData);
});
3.2 Product Unshelved Event
Description: Triggered when a product is taken off the shelf.
Event: ProductEvents.OffShelfProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | ProductData |
Example:
watchCore.product.eventEmitter.on(ProductEvents.OffShelfProduct, (data) => {
console.log('商品已下架', data.productData);
});
3.3 Product Deleted Event
Description: Triggered when a product is deleted.
Event: ProductEvents.DeleteProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | ProductData |
Example:
watchCore.product.eventEmitter.on(ProductEvents.DeleteProduct, (data) => {
console.log('商品已删除', data.productData);
});
3.4 Product Added Event
Description: Triggered when a new product is added.
Event: ProductEvents.AddProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | ProductData |
Example:
watchCore.product.eventEmitter.on(ProductEvents.AddProduct, (data) => {
console.log('商品已添加', data.productData);
});
3.5 Product Modified Event
Description: Triggered when product information is modified.
Event: ProductEvents.ChangeProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | ProductData |
Example:
watchCore.product.eventEmitter.on(ProductEvents.ChangeProduct, (data) => {
console.log('商品已修改', data.productData);
});
3.6 Product Moved Event
Description: Triggered when a product's position is moved.
Event: ProductEvents.MoveProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | [ProductData, ProductData] |
Example:
watchCore.product.eventEmitter.on(ProductEvents.MoveProduct, (data) => {
console.log('商品已移动', data.productData);
});
3.7 Sort Order Changed Event
Description: Triggered when the product sort order is modified.
Event: ProductEvents.ChangeRankProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | ProductData |
Example:
watchCore.product.eventEmitter.on(ProductEvents.ChangeRankProduct, (data) => {
console.log('商品排序已修改', data.productData);
});
3.8 Refresh Product List Event
Description: Triggered when the product list needs to be refreshed.
Event: ProductEvents.RefreshProductList
Example:
watchCore.product.eventEmitter.on(ProductEvents.RefreshProductList, () => {
console.log('商品列表已刷新');
});
3.9 Product Pushed Event
Description: Triggered when a product is pushed to the user.
Event: ProductEvents.PushProduct
Callback Parameters: Object object. Detailed type description is as follows:
| Property Name | Description | Type |
|---|---|---|
productData |
Product data | ProductData |
Example:
watchCore.product.eventEmitter.on(ProductEvents.PushProduct, (data) => {
console.log('商品已推送', data.productData);
});
3.10 Product Click Count Event
Description: Triggered when a product is clicked, containing click count information.
Event: ProductEvents.ProductClickTimes
Callback Parameters: ProductClickTimesData
Example:
watchCore.product.eventEmitter.on(ProductEvents.ProductClickTimes, (data) => {
console.log('商品点击次数', data);
});
