标签: sveltekit

使用 SvelteKit 从“$lib”导入时找不到模块 [...] 或其相应的类型声明 (js2307)

使用最新的 SvelteKit (1.0.0-next.401) 我在使用语法从 lib 导入组件时遇到问题$lib。我收到错误和红色波浪线(即使导入和网络应用程序工作正常)。

在此输入图像描述

错误信息如下:

找不到模块“$lib/components/shared/header.svelte”或其相应的类型声明。js(2307)

如果使用相对路径,错误就会消失。

typescript eslint svelte sveltekit

10
推荐指数
3
解决办法
2万
查看次数

如何在 SvelteKit 中导入类型 - PageLoad / PageServerLoad

我正在尝试PageLoad根据docs导入 SvelteKit 加载函数的函数。

导入似乎不存在。这是一个全新的应用程序,带有最新版本的 SvelteKit。它会找到PageLoadData就好了。

src/routes/+page.server.ts

+页面.server.ts

我也尝试过这篇文章,但我已经做了它所说的一切。

谢谢,

J

typescript sveltekit

10
推荐指数
0
解决办法
7408
查看次数

在 sveltekit 中,如何使用 __layout.svelte 文件在槽中传递道具?

在 __layout 文件中,我想传递一个变量,比如 btnclicked="HR",并且我想在 Slot 中渲染的组件中收集相同的变量?请帮忙怎么做?

svelte sveltekit

9
推荐指数
1
解决办法
3910
查看次数

如何实现cookie认证| SvelteKit 和 MongoDB

问题是 - 如何在 SvelteKit 和 MongoDB 应用程序中实现 cookie 身份验证?意味着如何正确使用钩子、端点、建立数据库连接并将其显示在样板项目中。

javascript authentication cookies mongodb sveltekit

9
推荐指数
1
解决办法
7784
查看次数

SvelteKit 无法解决依赖关系,即使它是外部的

我正在制作一个用户身份验证页面,就此而言,我正在使用 bcrypt 进行哈希处理。一切都很好,直到我在代码中实际使用 bcrypt 模块。在开发模式下运行它工作得很好,并且在预览构建时运行得很好,但在构建过程中会发生错误,部署时会导致它停止构建并出错。

\n

这是错误:

\n
> Using @sveltejs/adapter-vercel\n > node_modules/@mapbox/node-pre-gyp/lib/util/s3_setup.js:43:28: error: Could not resolve "mock-aws-s3" (mark it as external to exclude it from the bundle, or surround it with try/catch to handle the failure at run-time)\n    43 \xe2\x94\x82     const AWSMock = require('mock-aws-s3');\n       \xe2\x95\xb5                             ~~~~~~~~~~~~~\n\n > node_modules/@mapbox/node-pre-gyp/lib/util/s3_setup.js:76:22: error: Could not resolve "aws-sdk" (mark it as external to exclude it from the bundle, or surround it with try/catch to handle the failure at run-time)\n    76 \xe2\x94\x82   const AWS = …
Run Code Online (Sandbox Code Playgroud)

bcrypt sveltekit

9
推荐指数
1
解决办法
8055
查看次数

如何在 Sveltekit 中的页面之间保留 _layout 状态

我的 __layout.svelte 中有一个变量checked,我希望该值在页面导航之间保持不变。相反,当我导航到新页面时,checked它会重置回默认值 false。有没有一种方法可以在页面加载之间简单地保留布局或应用程序状态?

问题的上下文是我需要在应用程序中的页面导航中维护检查的值,这是一个手动暗模式开关。

<!-- __layout.svelte -->
<script>

  let checked = false

  $: checked, console.log('checked is', checked)

</script>

<a href="/">Home</a>
<a href="/about">About</a>
<a href="/contact">Contact</a>

<div style="margin-top:2em">
  <label>
    <input type="checkbox" bind:checked/>
    a checkbox...
  </label>
</div>

<slot></slot>
Run Code Online (Sandbox Code Playgroud)

svelte sveltekit

9
推荐指数
1
解决办法
2817
查看次数

在vscode开发容器中,有没有办法从本地网络上的不同机器访问docker容器?

我有一个应用程序(sveltekit)在里面运行,并且想从本地网络上的其他设备访问它。

可以从 localhost:3000 上的主机正常访问它。

以某种方式从本地网络上的另一台机器访问它。这可能吗?Sveltekit cli有 --host 标志,它输出以下内容:

$ svelte-kit dev --host

local:   http://localhost:3000
network: http://172.17.0.3:3000
Run Code Online (Sandbox Code Playgroud)

如何从本地网络上的不同设备访问该网络 URL?

OS: Pop OS
VSCode: 1.63.0 
Docker: Latest stable version.
Run Code Online (Sandbox Code Playgroud)

Docker使用存储库安装。以无根模式运行。

networking docker visual-studio-code vscode-remote sveltekit

9
推荐指数
1
解决办法
2853
查看次数

在 Hooks / Sveltekit 中返回错误页面

该文档对于显示 Hooks 的错误页面似乎有点含糊。我正在寻找一种有条件地显示 404 页面的方法。

export async function handle({ event, resolve }) {
  return new Response('This page does not exist.', {status: 404})
}
Run Code Online (Sandbox Code Playgroud)

这会以纯文本形式返回状态 404 页面,但我希望它返回带有布局的错误页面,而不仅仅是文本。有API可以使用吗?或者我应该重定向到404页面?

sveltekit

9
推荐指数
1
解决办法
1539
查看次数

SvelteKit:如何使用基于路由的命名槽

我对 SvelteKit 相当陌生,无法找出与插槽相关的问题。我正在尝试制作一个具有主控和详细信息窗格的应用程序布局,其中主控和详细信息的内容是根据路线确定的。

假设我有一个__layout.svelte这样的文件:

//-------------------------
// routes/__layout.svelte
//-------------------------
<main>
  <slot name="master" />
  <slot name="detail" />
</main>
Run Code Online (Sandbox Code Playgroud)

然后我有另一个像这样的页面(还有几个类似的路线页面):

//-------------------------
// routes/users.svelte
//-------------------------

<div slot="master">
  Users master content...
</div>

<div slot="detail">
  Users detail content...
</div>
Run Code Online (Sandbox Code Playgroud)

当我导航到时,http://localhost:3000/users我只是收到一条错误消息,提示我无法使用slot=""in users.svelte,因为它不在子组件内。

我这一切都错了吗?您将如何在 SvelteKit 中实现类似的应用程序布局?

svelte sveltekit

9
推荐指数
1
解决办法
6819
查看次数

您的页面仅在 Github Actions 上的“60000ms”内未触发其“load”事件

我的 Cypress 测试仅在 Github CI 上失败并出现以下错误:

Your page did not fire its `load` event within `60000ms`.
Run Code Online (Sandbox Code Playgroud)

我认为这是因为 Cypress 浏览器卡住了加载 Github Actions 环境阻止的内容。测试在本地运行良好。但是,由于我无法访问浏览器控制台,因此我无法知道导致错误的原因。

不过,根据 Cypress 的服务屏幕截图,页面加载得很好。

我怎样才能

  • 在我的赛普拉斯测试中禁用load事件检查,因为我认为这不是一个真正的问题

  • 通过 Cypress 服务访问 JavaScript 日志或网络选项卡日志,以确认 Github Actions 运行时环境中可能存在的问题

这是一个基于 SvelteKit 的网站

cypress sveltekit

9
推荐指数
1
解决办法
8348
查看次数