diff --git a/src/content/docs/zh-cn/guides/integrations-guide/netlify.mdx b/src/content/docs/zh-cn/guides/integrations-guide/netlify.mdx index 404d39c14af91..ebb6eb3a0ff25 100644 --- a/src/content/docs/zh-cn/guides/integrations-guide/netlify.mdx +++ b/src/content/docs/zh-cn/guides/integrations-guide/netlify.mdx @@ -133,7 +133,7 @@ const {

你好,来自{city}的友好访客!

``` -如果你使用 TypeScript,你可以通过更新 `src/env.d.ts` 来使用 `NetlifyLocals` 来获得正确的类型: +如果你使用 TypeScript,你可以通过更新 `src/env.d.ts` 来使用 `NetlifyLocals` 来 [获得正确的类型](/zh-cn/guides/typescript/#扩展全局类型): ```ts title="src/env.d.ts" type NetlifyLocals = import('@astrojs/netlify').NetlifyLocals @@ -321,6 +321,72 @@ export default defineConfig({ }); ``` + +### 本地开发功能 + +当运行 `astro dev` 时,适配器会启用若干 Netlify 平台功能,以确保开发环境尽可能与生产环境一致。这些功能包括: + +- 一个本地的 [Netlify 图像 CDN](https://docs.netlify.com/build/image-cdn/overview/) 服务器。默认情况下用于 [图像支持](#netlify-图片-cdn-支持) +- 一个本地的 [Netlify Blobs](https://docs.netlify.com/build/data-and-storage/netlify-blobs/) 服务器。默认情况下用于 [sessions](#sessions) +- 来自你的 Netlify 配置的 [重定向、重写](https://docs.netlify.com/manage/routing/redirects/overview/) 和 [headers](https://docs.netlify.com/manage/routing/headers/) +- 按需渲染的页面中访问的 [Netlify 边缘上下文](#从你的站点访问-edge-上下文) +- 来自你的 Netlify 站点的 [环境变量](https://docs.netlify.com/build/environment-variables/overview/) + +当您的本地站点使用 `netlify link` [链接到 Netlify 站点](https://docs.netlify.com/api-and-cli-guides/cli-guides/get-started-with-cli/#link-and-unlink-sites) 时,这些功能效果最佳。 + +你可以在适配器配置中的 [`devFeatures`](#devfeatures) 选项启用或禁用其中的一些功能。默认情况下,除环境变量外,所有功能均已启用。 + +#### `devFeatures` + +

+**类型:** `boolean | object`
+**默认值:** `{ images: true, environmentVariables: false }`
+ +

+ +`devFeatures` 可以是布尔值,用于启用或禁用所有功能,或者是一个对象,用来启用特定功能。 + +```js title="astro.config.mjs" ins={7-12} +import { defineConfig } from 'astro/config'; +import netlify from '@astrojs/netlify'; + +export default defineConfig({ + // ... + adapter: netlify({ + devFeatures: { + // 在开发中启用 Netlify 图像 CDN 支持. 默认为 true。 + images: false, + // 在开发环境中注入 Netlify 环境变量。默认值为 false。 + environmentVariables: true, + }, + }), +}); +``` + +##### `devFeatures.images` + +

+**类型:** `boolean`
+**默认值:** `true`
+ +

+ +在开发中启用对本地 [Netlify 图像 CDN](https://docs.netlify.com/build/image-cdn/overview/) 的支持。 + +这使用的是 Netlify 图像 CDN 的本地版本,而不是默认的 Astro 图像服务。 + +##### `devFeatures.environmentVariables` + +

+**类型:** `boolean`
+**默认值:** `false`
+ +

+ +将来自你的 Netlify 站点的环境变量注入到开发环境中。 + +这使得你可以在开发环境中使用与生产环境相同的值。有关更多信息,包括如何为不同环境使用不同变量,请参阅 [Netlify 关于环境变量的文档](https://docs.netlify.com/build/environment-variables/overview/)。 + ## 实验性功能 以下功能当前可用,但在未来更新中可能会发生破坏性变更。如果你在项目中使用这些功能,请密切关注 [`@astrojs/netlify` CHANGELOG](https://github.com/withastro/astro/tree/main/packages/integrations/netlify/CHANGELOG.md) 以获取最新动态。