Cor*_*ool 16 typescript sveltekit
Svelte 文档展示了如何在钩子中的局部变量上设置元素:https://kit.svelte.dev/docs/hooks#server-hooks
event.locals.user = await getUserInformation(event.cookies.get('sessionid'));
Run Code Online (Sandbox Code Playgroud)
如果我尝试在 TypeScript 中扩展 locals 对象,则会收到错误,指出属性不存在。
类型“Locals”上不存在属性“user”
界面App.Locals是空的,应该是系统正常的错误信息。如何App.Locals使用用户或会话等属性扩展 Svelte 的接口,并在我的服务器路由中也提供此信息?我想避免自己到处投射或定义它。
H.B*_*.B. 36
app.d.ts在新的 SvelteKit 项目中应该已经有一个声明接口的文件。如果您没有这样的文件,您可以创建自己的声明。
该接口是命名空间的(参见App):
declare namespace App {
interface Locals {
user: UserInfo; // Your type here
}
interface PageData {}
interface Platform {}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6992 次 |
| 最近记录: |