Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 67 additions & 1 deletion src/content/docs/zh-cn/guides/integrations-guide/netlify.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ const {
<h1>你好,来自{city}的友好访客!</h1>
```

如果你使用 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
Expand Down Expand Up @@ -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`

<p>
**类型:** `boolean | object`<br />
**默认值:** `{ images: true, environmentVariables: false }`<br />
<Since v="6.5.1" pkg="@astrojs/netlify"/>
</p>

`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`

<p>
**类型:** `boolean`<br />
**默认值:** `true`<br />
<Since v="6.5.1" pkg="@astrojs/netlify"/>
</p>

在开发中启用对本地 [Netlify 图像 CDN](https://docs.netlify.com/build/image-cdn/overview/) 的支持。

这使用的是 Netlify 图像 CDN 的本地版本,而不是默认的 Astro 图像服务。

##### `devFeatures.environmentVariables`

<p>
**类型:** `boolean`<br />
**默认值:** `false`<br />
<Since v="6.5.1" pkg="@astrojs/netlify"/>
</p>

将来自你的 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) 以获取最新动态。
Expand Down