Files
vibe-registry/examples/playground/src/pages.ts
T
hellow-da-sb 2277d55ac9 feat(render): M2 — React 渲染内核 + 布局画廊(playground)
- core 新增 render 子路径(vibe-registry/render):PageView + WidgetView + LayoutGallery
- layout 注册项支持 render 实现;缺省兜底 DefaultLayout
- widget 注册项 component 挂真实 React 组件
- PageBlockDecl 增加 slot 字段(块落在布局哪个槽位)
- playground:admin 布局真实骨架 + 组件 + 订单页,dev 预览 + 生产构建通过
- 全量回归:core/qa-orchestrator/playground typecheck 全绿
2026-09-03 00:59:31 +08:00

37 lines
1.2 KiB
TypeScript

/**
* playground 页面声明 —— 验证"用户告诉 agent 用 admin 布局,页面只管业务"
*/
import { definePage } from 'vibe-registry'
import './registry.ts' // 集中注册(副作用)
export const orderListPage = definePage({
layout: 'admin',
title: '订单列表',
blocks: [
{ slot: 'sidebar', widget: 'nav-menu', props: { items: [{ label: '订单', active: true }, { label: '商品' }, { label: '客户' }] } },
{ slot: 'header', widget: 'page-header', props: { title: '订单管理', subtitle: '近 30 天全部订单' } },
{
slot: 'content',
widget: 'data-table',
props: {
columns: [
{ key: 'id', title: '订单号' },
{ key: 'customer', title: '客户' },
{ key: 'amount', title: '金额' },
{ key: 'status', title: '状态' },
],
},
bind: { rows: 'orders' },
},
],
setup: async () => {
return {
orders: [
{ id: 'A1001', customer: '张三', amount: '¥ 1,299', status: '已支付' },
{ id: 'A1002', customer: '李四', amount: '¥ 88', status: '待发货' },
{ id: 'A1003', customer: '王五', amount: '¥ 4,560', status: '已完成' },
],
}
},
})