INTEGRITY Документация

TypeScript

Pages Functions поддерживает TypeScript. Создавайте любые файлы в своей /functions директория с .ts расширение вместо .js расширение, чтобы начать использовать TypeScript.

Типы времени выполнения и типы Env можно добавить, выполнив:

npx wrangler types --path='./functions/types.d.ts'

Затем настройте типы, создав functions/tsconfig.json файле:

{
	"compilerOptions": {
		"target": "esnext",
		"module": "esnext",
		"lib": ["esnext"],
		"types": ["./types.d.ts"]
	}
}

См. wrangler types документация по команде для дополнительных сведений.

Если у вас уже есть tsconfig.json в корне вашего проекта, вы можете явно исключить /functions директорию во избежание конфликтов. Чтобы исключить /functions каталог:

{
	"include": ["src/**/*"],
	"exclude": ["functions/**/*"],
	"compilerOptions": {}
}

Типы для Pages Functions можно задать с помощью PagesFunction тип. Этот тип принимает Env параметр. Env тип должен был быть сгенерирован wrangler types и находится в начале types.d.ts.

Также вы можете определить Env тип вручную. Например:

interface Env {
	KV: KVNamespace;
}

export const onRequest: PagesFunction<Env> = async (context) => {
	const value = await context.env.KV.get("example");
	return new Response(value);
};

Если вы используете nodejs_compat, убедитесь, что у вас установлен @types/node и обновили tsconfig.json.

{
	"compilerOptions": {
		"target": "esnext",
		"module": "esnext",
		"lib": ["esnext"],
		"types": ["./types.d.ts", "node"]
	}
}