问题标签 [sapper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
857 浏览

scroll - 如何阻止 Sapper 在嵌套路由中滚动回顶部?

问题是我有两条路线 /istifta/istifta/edit

/istifta路线显示 istiftas(问题),而/istifta/edit路线打开一个面板,用于在同一页面上编辑由于相同_layout.svelte文件而出现的问题。

唯一的问题是当我/istifta/edit/istifta. 它不仅会打开编辑面板,还会滚动到页面顶部。我怎样才能阻止这种行为?我想在此导航时保持相同的滚动位置。istiftas 是一个很长的列表。对于编辑,它应该保持在相同的滚动位置。一次又一次地滚动到底部并查找 id 对用户来说过于复杂。

请解决这个问题。特别是,Rich Harris,如果您正在阅读本文。

0 投票
1 回答
1028 浏览

javascript - fetch post 给我未定义的已发布数据?

学习如何使用 Sapper。我有一个带有表单的组件(表单有一个输入电子邮件地址的字段)并使用 fetch 将数据发布到服务器句柄。当我发布数据并尝试记录我发布的数据时,它会记录未定义。我不知道为什么,需要帮助才能弄清楚。

这是我的表单组件并获取邮政编码:

显示为:console.log("let us see" + result) 的行显示 [object Object],我不明白为什么?

我管理帖子的句柄:

为什么数据未定义?代码错了吗?我应该做些什么来阅读“数据”并管理表单中发布的实际数据吗?

这是我的服务器代码(在@J之后)指出了正文解析器问题:

如果我从具有响应的 fetch 函数中获得 console.log (r)。我在控制台中得到这个:响应{type:“basic”,url:“ http://localhost:3000/posthandle ”,redirected:false,status:200,ok:true,...}

0 投票
4 回答
4070 浏览

routing - Sapper - 受保护的路线(路线守卫)

我的问题很简单。您如何防止(例如非授权用户)在工兵中输入特定路线?

用户.svelte

在安装到 DOM 之前是否有任何选项可以运行一些代码?

您如何解决此类问题?

谢谢你。

0 投票
1 回答
1185 浏览

svelte - 使用附加的 svelte 组件并在相同的 Javascript 上下文中创建窗口

我使用 Sapper 框架,我想打开我自己的开发工具窗口,该窗口应该可以完全访问主窗口的 Javascript 对象。

我正在尝试使用苗条的组件和相同的 Javascript 上下文创建一个新窗口:

它可以工作,但没有 CSS 样式。

您可以使用此 REPL进行测试。

如何为新窗口应用组件 CSS 样式?

或者创建此类窗口的最佳实践是什么?

0 投票
1 回答
854 浏览

javascript - Svelte 3:通过道具与父母交流的孩子数组

Svelte 3:子组件的道具和数组

我计划根据优秀的redblobgames文章在六边形瓷砖上编写棋盘游戏,并使用 Svelte 3 / Sapper 进行编码。

我的问题是关于子组件通过道具与父母之间的交流。我以前使用商店在旧版本的 Svelte 中这样做过,但我想没有它也可以做到这一点。

假设我有一块 Herxagons SVG 瓷砖板。每个瓦片的形式为:

编辑器组件负责从我的 redblobgames 六边形处理库的自定义实现中选择布局,设置 SVG 容器并使用图块填充网格。Tis 只是一个调用 Hex 组件的 each 语句:

当试图在板下方的 teextarea 中显示 thr 选定的瓷砖参考 (q,r,s) 时,就会出现问题。在脚本中执行此操作不起作用:

问题:

父容器是否可以在 childfren 数组中观察某个道具(又名“选定”),这是子组件中的一种“currying”道具?

  • 或者 -

我应该最终考虑使用商店来代替吗?

注意:在开发的这一点上,我很难分享一些完整的工作代码示例或源代码,因为它发生了很大的变化。在最坏的情况下,我可以压缩并通过邮件发送 src/routes 和 src/components 工兵的文件夹!

有谁知道让我走正确的路?

问候,hefeust。

0 投票
0 回答
199 浏览

pouchdb - 如何使用 Sapper 设置 PouchDB?

我有一个使用Sapper构建的项目,并且我使用 Rollup 作为捆绑器。我一直在尝试将 PouchDB 设置为与我的应用程序一起使用,但是使用pouchdb-browserpouchdb-findrelational-pouch作为开发依赖项安装时,构建总是会因fetch is not defined错误而崩溃。

我确定这是因为我对 Rollup 和 Sapper 的工作方式不够熟悉。据我了解,这是因为 Sapper 正在执行 SSR,并且在服务器的上下文fetch中没有定义。如果确实如此,我该如何配置 Rollup/Sapper 来解决这个构建错误?

谢谢!

0 投票
2 回答
11183 浏览

jquery - 如何在 Svelte 中使用 jQuery

这样做:

显示错误

0 投票
1 回答
1472 浏览

svelte - 如何在 sapper/svelte 中使用多个 URL 参数

我刚开始学习苗条。在阅读了一些 sapper 文档后,我看到 sapper 使用文件名和文件夹结构进行路由,如果我想要 /blog/:article 之类的东西,可以在里面创建一个带有“blog”名称和文件“[slug].svelte”的文件夹,我如何构建更复杂的路线?示例:/blog/:article/comments/:commentId

0 投票
1 回答
2338 浏览

amazon-web-services - 如何将 AWS Amplify 与 Sapper 一起使用?

我的目标是在Sapper项目中使用AWS Amplify 。

从头开始创建 Sapper 项目(使用 webpack)然后添加 AWS Amplify 并在 dev 中运行它是成功的,但是在生产中运行它会在控制台中引发 GraphQL 错误(未捕获错误:无法使用来自另一个模块或领域的 e“__Schema”)。

修复此错误会引发另一个错误(未捕获的 ReferenceError:未定义进程)。

一个解决方案是将 GraphQL 从 0.13.0 升级到 14.0.0,不幸的是 GraphQL 0.13.0 是 AWS Amplify API 依赖项。

有谁知道如何让 AWS Amplify 在生产中与 Sapper 一起工作?

包含源文件的 repo 链接位于此处:https ://github.com/ehemmerlin/sapper-aws-amplify


(为长篇道歉,但我想明确一点)

详细步骤

1/ 使用 webpack ( https://sapper.svelte.dev ) 创建一个 Sapper 项目。

2/ 添加 AWS Amplify ( https://serverless-stack.com/chapters/configure-aws-amplify.html ) 和 lodash

3/ 配置 AWS Amplify ( https://serverless-stack.com/chapters/configure-aws-amplify.html )

创建src/config/aws.js配置文件,其中包含(使用您的更改值,但按本文的目的工作):

将以下代码添加到src/client.js中的现有代码中:

4/ 测试它

在开发(纱线运行开发)中:它有效

在生产中(纱线运行构建;节点 __sapper__/build):它会引发错误。

5/ 修复它

按照给定的链接(https://yarnpkg.com/en/docs/selective-version-resolutions),我将此代码添加到 package.json 文件中:

6/ 测试它

在控制台中引发另一个错误(即使在开发模式下)。

此线程 ( https://github.com/graphql/graphql-js/issues/1536 )给出的修复是将 GraphQL 从 0.13.0 升级到 14.0.0,不幸的是 GraphQL 0.13.0 是 AWS Amplify API 依赖项。

0 投票
4 回答
2971 浏览

markdown - Sapper/Svelte:如何添加降价文件?

我正在使用默认的sapper-template-rollup创建一个博客。

在 blog 文件夹中,它确实提到了从 markdown 文件生成数据。但我找不到怎么做?