nocobase/packages/samples/shop-events
chenos e6a2a292b3
feat: upgrade formily (#1880)
* feat: upgrade formily

* fix: upgrade @formily/json-schema

* fix: optimizing performance

* fix: performance code

* refactor: `React.memo` and `observer` component add `displayName` property

* fix: add cache to Schema.compile

* feat: 优化代码

* fix: 修复卡顿最终的问题

* Update SchemaComponentProvider.tsx

* feat: 再次优化代码

* feat: optimized code

---------

Co-authored-by: dream2023 <1098626505@qq.com>
2023-06-06 19:33:04 +08:00
..
src feat: upgrade formily (#1880) 2023-06-06 19:33:04 +08:00
client.d.ts docs: add hooks dev doc (#868) 2022-09-30 17:36:10 +08:00
client.js docs: add hooks dev doc (#868) 2022-09-30 17:36:10 +08:00
package.json chore(versions): 😊 publish v0.9.4-alpha.2 2023-05-26 17:05:46 +08:00
README.md docs: add hooks dev doc (#868) 2022-09-30 17:36:10 +08:00
server.d.ts docs: add hooks dev doc (#868) 2022-09-30 17:36:10 +08:00
server.js docs: add hooks dev doc (#868) 2022-09-30 17:36:10 +08:00

Hooks for simple shop scenario

Register

yarn pm add sample-shop-hooks

Activate

yarn pm enable sample-shop-hooks

Launch the app

# for development
yarn dev

# for production
yarn build
yarn start

Connect to the API

Products API

# create a product
curl -X POST -H "Content-Type: application/json" -d '{"title": "iPhone 14 Pro", "price": 7999, "enabled": true, "inventory": 1}' "http://localhost:13000/api/products"

Orders API

# create a order
curl -X POST -H "Content-Type: application/json" -d '{"productId": 1, "quantity": 1, "totalPrice": 0, "userId": 2}' 'http://localhost:13000/api/orders'
# {"id": <id>, "status": 0, "productId": 1, "quantity": 1, "totalPrice": 7999, "userId": 1}

# create an expired delivery to watch schedule task
curl -X POST -H "Content-Type: application/json" -d '{"orderId": 1, "provider": "SF", "trackingNumber": "123456789", "userId": 2, "createdAt": "2022-09-01T00:00:00Z"}' 'http://localhost:13000/api/deliveries'