跳到正文

q:application ​

机器翻译

本页由英文原文机器翻译而来,尚未经过母语审校,欢迎在 GitHub 上提出修改。内容如有出入,以英文原文为准。

Quantum 中的 Web 应用不是 q:application:它是 components/ 中的一组页面,由 quantum start 提供服务。参见入门和快速开始。

q:application 是不是 Web 页面的程序的根元素。它们都不属于受支持的核心(参见 SUPPORT_TIERS.md):

type层级quantum run app.q 做什么
game实验室构建一个 2D 游戏(--engine pixi 或 --engine godot)
terminal实验层构建一个终端界面
ui实验层构建一个界面,只有布局(--target html 或 textual;mobile 属于实验室)

运行实验层或实验室的应用时,会打印一次警告说明这一点。它们的标签和输出可能在任何版本中改变。

已移除:type="html"、type="api"、type="microservices" ​

早期版本记载了用 q:application 加 q:route 块声明的 Web 服务器和 JSON API。它们从未真正运行过自己的路由——html 启动时就失败,api 返回第一个 q:return 的字面文本——已在 0.11 中移除。不带 type 的 q:application 原来表示 type="html",所以同样会被拒绝。type="testing"(qtest: 引擎)已在 0.22 中移除;取代它的是 quantum test。

现在解析器会停下并给出指引:

text
<q:application> type="html" was removed in Quantum 0.11: it never ran its
routes. Build a web app as pages in components/ (components/index.q is /) and
run `quantum start`. See https://quantumframework.net/guide/getting-started

每条路由对应成什么:

以前现在
<q:route path="/about" method="GET">components/about.q
<q:route path="/" method="GET">components/index.q
<q:route path="/users" method="POST">components/users.q 中的一个 q:action
JSON API 路由不可用

MIT 许可证 · 使用 VitePress 构建