在 Astro 中使用 Bun
Bun 是一个 all-in-one 的 JavaScript 运行时和工具套件。可请参阅 Bun 的文档 获取更多信息。
前期准备
段落标题 前期准备- 在你的机器上安装了 Bun。请参阅 Bun 官方文档的 安装说明。
使用 Bun 创建一个新的 Astro 项目
段落标题 使用 Bun 创建一个新的 Astro 项目使用以下 create-astro
命令并通过 Bun 创建一个新的 Astro 项目:
bunx create-astro@latest my-astro-project-using-bun
安装依赖
段落标题 安装依赖如果你正使用 bunx create-astro
创建一个新的项目,CLI 将会自动使用 Bun 安装依赖,所以你可以跳过这一步。
否则,你需要使用 Bun 安装依赖:
bun install
添加类型
段落标题 添加类型Bun 发布了含有 Bun 的运行时类型的 bun-types
包。
使用以下命令安装 bun-types
:
bun add -d bun-types
在 tsconfig.json
文件中将该包添加到你的类型中:
"compilerOptions": { "types": ["bun-types"] }
使用 Astro 集成
段落标题 使用 Astro 集成你也可以通过 astro add
命令来使用任意 Astro 官方集成:
bunx astro add react
通过 Bun 运行 Astro
段落标题 通过 Bun 运行 Astro运行开发服务器
段落标题 运行开发服务器为了运行开发服务器并使用 Bun 作为运行时,请使用以下命令:
bunx --bun astro dev
通过 Bun 构建你的站点
段落标题 通过 Bun 构建你的站点为了使用 Bun 作为运行时构建你的站点,请使用以下命令:
bunx --bun astro build
Astro 会将你的站点输出到 dist/
目录。然后,你可以使用 preview
命令来运行你的站点:
bunx --bun astro preview
通过 @astrojs/node
来让 Bun 添加 SSR
段落标题 通过 @astrojs/node 来让 Bun 添加 SSRBun 提供了 Node.js API 兼容性 的功能。使用 @astrojs/node
适配器,你可以通过 Bun 的运行时来替代 Node 来为你的 Astro 项目添加 服务器端渲染。
运行如下命令来为你的 Astro 项目添加 Node.js 适配器:
bunx astro add node
接着,使用和前面相同的构建命令来再次构建你的站点:
bunx --bun astro build
最后,使用如下命令来运行你构建后的站点。
bun ./dist/server/entry.mjs
官方资源
段落标题 官方资源社区资源
段落标题 社区资源已经在 Astro 项目中使用 Bun?请在此页面添加你的博客文章或视频!
更多操作指南
-
状态共享
学习如何使用 Nano Stores 在框架组件之间共享状态
-
添加 RSS 摘要
通过向你的 Astro 网站添加 RSS 摘要让用户来订阅你的内容。
-
安装一个 Vite 或 Rollup 插件
了解如何通过向项目添加 Rollup 插件来导入 YAML 数据。
-
构建自定义图像组件
了解如何使用 getImage 函数构建支持媒体查询的自定义图像组件
-
使用 API 路由构建表单
了解如何使用 JavaScript 发送表单到 API 路由
-
在 Astro 页面中构建 HTML 表单
了解如何在 Astro 页面中构建 HTML 表单并在你的 frontmatter 中处理提交请求
-
在 Astro 中使用 Bun
了解如何在 Astro 站点中使用 Bun。
-
调用服务器端点
了解如何在 Astro 中调用服务器端点
-
校验验证码
了解如何创建一个 API 路由并从客户端进行获取。
-
用 Docker 来构建你的 Astro 网站
了解如何使用 Docker 来构建你的 Astro 网站。
-
Dynamically Import Images
Learn how to dynamically import images using Vite's import.meta.glob function
-
为链接添加图标
了解如何安装 rehype 插件并为你 Markdown 文件中的链接添加图标
-
添加 i18n 功能
通过动态路由和内容集合来让你的 Astro 站点支持国际化。
-
添加最后修改时间
编写一个在你的 Markdown 和 MDX 文件里添加最后修改时间的 remark 插件。
-
添加阅读时间
编写一个在你的 Markdown 和 MDX 文件里添加阅读所需时间的 remark 插件。
-
在 Astro 组件中共享状态
了解如何通过 Nano Stores 在 Astro 组件中共享状态
-
使用流式处理来提升页面性能
了解如何使用流式处理来提升页面性能
-
使用 Tailwind Typography 美化渲染后的 Markdown
了解如何使用 @tailwind/typography 美化你渲染后的 Markdown