必须指定发布端,否则Zion默认按web编译导致miniapp请求失败,且样式单位、生命周期钩子不兼容;需求文档中需用标题括号、正文首段固定句式或附件对照表声明,但构建仅读取正文声明。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

用函子Zion写需求时,必须明确说明发布到哪个端,否则开发无法确认组件渲染环境、API调用方式和样式适配规则。
为什么必须指定发布端
函子Zion的运行时会根据端类型(如 web / miniapp / rn)动态加载对应宿主能力。未声明端时,【Zion 会默认走 web 流程编译,但 miniapp 端可能因缺少 wx.request 拦截器而请求失败】,且样式单位(rpx vs px)、生命周期钩子(onLoad vs useEffect)均不兼容。
在需求文档中声明端的三种方式
方法一:在需求标题后紧跟括号标注
例如:“用户订单列表(发布端:微信小程序)”“商品搜索框(发布端:Web + iOS RN)”。
方法二:在需求正文首段用固定句式声明
“本需求需同时发布至安卓 App(RN 环境)与企业微信 H5(Web 环境),二者共用同一 Zion 组件,但按钮点击行为需按端区分:RN 端跳原生订单页,Web 端跳 /order/detail 路由。”
方法三:在附件《端能力对照表》中标注每项功能支持的端
注意:若该表未同步更新,以需求正文中最新声明为准,【Zion 构建流程只读取需求正文中的端声明,不解析附件】。
多端协同需求的写法要点
第一步:先写清楚主端逻辑
以目标端为基准写交互流程、数据字段、错误提示文案,例如“微信小程序端点击‘立即支付’触发 wx.requestPayment,成功后跳转 result 页面”。
第二步:用“其他端适配说明”小节补充差异点
比如:“Web 端无 wx.requestPayment,改用跳转 /pay?order_id=xxx;RN 端需调用 NativeModule.pay({ orderId }),并监听 onPaySuccess 事件。”
第三步:标注端间共享与隔离部分
“订单卡片 UI 使用 Zion 原生 View/Text,全端一致;但地址栏右侧‘复制’图标仅在 Web 和 RN 显示,小程序端隐藏——通过 $zion.env.platform === 'miniapp' 控制显隐。”


















