静态资源

构建 Web 应用的一部分任务是处理各种各样的静态资源,如图片、视频、JSON、字体等。Turbopack 为这些资源提供用法差不多的工具,这样你就可以快速上手。

导入静态资源

Turbopack 原生支持导入静态资源。

import img from './img.png'
import video from './video.mp4'
import audio from './audio.wav'

Next.js

在 Webpack 和其它框架中,导入一张图片会返回图片的 URL。

import img from './img.png';
 
console.log(img); // /assets/static/1uahwd98h123.png

在 Next.js 中,导入一张图片会返回一个对象,这个对象包含图片各种元数据,这样它才能由 Next.js 图片组件 处理。

目前,暂不支持从图片提取出元数据对象,而是将图片转为字符串。

Public 目录

你可以在 /public 目录放置静态资源,这样资源就通过网站的根 URL 获取。举个例子,public/favicon.png 就可以使用 https://example/favicon.png 访问。

Turbopack 原生支持 /public 目录。

JSON

大多框架都能够在应用里直接导入 JSON:

import fixtures from './fixtures.json';

这个功能同样也是 Turbopack 原生支持的,通过 named import 进行 JSON 引入:

import { users, posts } from './fixtures.json';