问题标签 [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 投票
1 回答
1425 浏览

svelte - Sapper:当导航离开带有 kwes.io 表单的页面时,如何修复“parentNode 为空”?

我正在 SapperJS 中使用kwes.io创建一个联系表单。表格本身有效。

但是一旦我登陆联系页面,我就无法使用 Sapper 链接离开它,但正常的 https 链接可以工作。

浏览器中的 URL 更改,但内容未加载。然后要加载内容,我必须重新加载页面。

我联系了 Kwes 的支持团队,但他们说这与 Sapper 处理路由的方式有关,无法提供帮助。

我像这样创建了我的表格

在 Chrome 浏览器控制台上打印

Uncaught (in promise) TypeError: Cannot read property 'removeChild' of null

在 Firefox 控制台上

TypeError: t.parentNode is null

0 投票
1 回答
1256 浏览

svelte - 将值从布局传递到苗条工兵中的嵌套子路由?

[编辑] 我已更新示例以包括使用 preload ( userb) 和 {#await} ( usera)。场景 usera 和 userb 都未定义/users/[username]/about.svelte

你将如何让这样的事情起作用:

/users/[用户名]/_layout.svelte

/users/[用户名]/about.svelte

似乎 /user/:username/about 没有从 _layout 接收道具用户。这适用于 nuxt(对于 vuejs 而不是 svelte 基本上是 sapper)。

0 投票
3 回答
926 浏览

svelte - zeit/now 上的 svelte/sapper 直接链接问题 - 如何调试或修复?

在开发中,我可以直接链接到任何路线。在 Zeit/now,我可以引导链接到某些页面,但不能链接到其他页面。我正在努力确定问题所在。

这是一个示例,直接导航到“ https://partyshoegame.now.sh/games/play/Sparkle ”不起作用,但从主页导航到同一个地方确实有效。

Zeit 运行时日志没有任何条目。

也许是我拥有 Firebase 内容的页面?我通过 RXJS/RXfire 使用 firebase 身份验证,并通过谷歌的 API 使用 firestore。

我断言我尝试过的事情:

链接深度:我的内容有两层深。我把一些拉到只有一层深,但这并没有什么不同。

Slugs:我有博客样本和我的内容。博客有效,我的无效。

我的 Helper js 代码:我在 routes 文件夹中有几个没有下划线名称的 js 文件。我想,也许那些是造成路线问题的原因。我加了下划线,没有区别。

蛞蝓#2:我放置了一个命名文件两层深。无法直接访问没有索引?:我的一些路线只有 [slug].svelte。我添加了 index.svelte。没有不同。

Slugs #3:我的文件被命名为 [playDocId].svelte,然后我使用了 params.playDocId。我把它们换成了[slug]。没有不同

应用服务器:将 polka 换成 express。没有不同

我的路线文件夹的片段

我的路线文件夹的屏幕截图

服务器响应

` 在 dev 中,我可以直接链接到任何路由。在 Zeit/now,我可以引导链接到某些页面,但不能链接到其他页面。我正在努力确定问题所在。

这是一个示例,直接导航到“ https://partyshoegame.now.sh/games/play/Sparkle ”不起作用,但从主页导航到同一个地方确实有效。

Zeit 运行时日志没有任何条目。

也许是我拥有 Firebase 内容的页面?我通过 RXJS/RXfire 使用 firebase 身份验证,并通过谷歌的 API 使用 firestore。

我断言我尝试过的事情:

链接深度:我的内容有两层深。我把一些拉到只有一层深,但这并没有什么不同。

Slugs:我有博客样本和我的内容。博客有效,我的无效。

我的 Helper js 代码:我在 routes 文件夹中有几个没有下划线名称的 js 文件。我想,也许那些是造成路线问题的原因。我加了下划线,没有区别。

蛞蝓#2:我放置了一个命名文件两层深。无法直接访问没有索引?:我的一些路线只有 [slug].svelte。我添加了 index.svelte。没有不同。

Slugs #3:我的文件被命名为 [playDocId].svelte,然后我使用了 params.playDocId。我把它们换成了[slug]。没有不同

应用服务器:将 polka 换成 express。没有不同

我的路线文件夹的片段

我的路线文件夹的屏幕截图

服务器响应

` 找不到页面。

`

错误页面截图


包.json

{ "name": "partyshoegame", "description": "Party Shoe Game", "version": "0.0.1", "license": "UNLICENSED", "scripts": { "dev": "sapper dev", "build": "sapper build --legacy", "export": "sapper export --legacy", "zeit": "sapper export --legacy && now --prod && sapper dev", "start": "node __sapper__/build", "cy:run": "cypress run", "cy:open": "cypress open", "test": "run-p --race dev cy:run" }, "dependencies": { "@firebase/app": "^0.4.19", "body-parser": "^1.19.0", "bulma": "^0.8.0", "bulma-extensions": "^6.2.7", "compression": "^1.7.1", "date-fns": "^2.5.1", "date-fns-tz": "^1.0.8", "express": "^4.17.1", "firebase": "^7.2.0", "firebaseui": "^4.2.0", "helmet": "^3.21.2", "lazysizes": "^5.1.2", "polka": "^1.0.0-next.7", "rxfire": "^3.8.7", "rxjs": "^6.5.3", "sirv": "^0.4.0", "uuid": "^3.3.3", "uuid-random": "^1.3.0", "xmlhttprequest": "^1.8.0" }, "devDependencies": { "@babel/core": "^7.0.0", "@babel/plugin-syntax-dynamic-import": "^7.0.0", "@babel/plugin-transform-runtime": "^7.0.0", "@babel/preset-env": "^7.0.0", "@babel/runtime": "^7.0.0", "npm-run-all": "^4.1.5", "rollup": "^1.12.0", "rollup-plugin-babel": "^4.0.2", "rollup-plugin-commonjs": "^10.0.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-replace": "^2.0.0", "rollup-plugin-svelte": "^5.0.1", "rollup-plugin-terser": "^4.0.4", "sapper": "^0.27.0", "svelte": "^3.0.0" }, "main": "main.js", "repository": "https://github.com/ketupia/psg-firebase", "author": "Ketupia <ketupia@gmail.com>", "private": true }

构建过程

  1. npm 运行导出
  2. 提交到 github
  3. zeit/now 自动拉

    或者

“npm run zeit”,它是 sapper 导出并推送到现在。

2 : https://i.stack.imgur.com/0tRuu.png找不到页面。

在应用程序中找不到该页面。

404:未找到

代码:RESOURCE_NOT_FOUND ID:cle1:mb46h-1573325573258-8bd73af71130 `

错误页面截图


包.json

{ "name": "partyshoegame", "description": "Party Shoe Game", "version": "0.0.1", "license": "UNLICENSED", "scripts": { "dev": "sapper dev", "build": "sapper build --legacy", "export": "sapper export --legacy", "zeit": "sapper export --legacy && now --prod && sapper dev", "start": "node __sapper__/build", "cy:run": "cypress run", "cy:open": "cypress open", "test": "run-p --race dev cy:run" }, "dependencies": { "@firebase/app": "^0.4.19", "body-parser": "^1.19.0", "bulma": "^0.8.0", "bulma-extensions": "^6.2.7", "compression": "^1.7.1", "date-fns": "^2.5.1", "date-fns-tz": "^1.0.8", "express": "^4.17.1", "firebase": "^7.2.0", "firebaseui": "^4.2.0", "helmet": "^3.21.2", "lazysizes": "^5.1.2", "polka": "^1.0.0-next.7", "rxfire": "^3.8.7", "rxjs": "^6.5.3", "sirv": "^0.4.0", "uuid": "^3.3.3", "uuid-random": "^1.3.0", "xmlhttprequest": "^1.8.0" }, "devDependencies": { "@babel/core": "^7.0.0", "@babel/plugin-syntax-dynamic-import": "^7.0.0", "@babel/plugin-transform-runtime": "^7.0.0", "@babel/preset-env": "^7.0.0", "@babel/runtime": "^7.0.0", "npm-run-all": "^4.1.5", "rollup": "^1.12.0", "rollup-plugin-babel": "^4.0.2", "rollup-plugin-commonjs": "^10.0.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-replace": "^2.0.0", "rollup-plugin-svelte": "^5.0.1", "rollup-plugin-terser": "^4.0.4", "sapper": "^0.27.0", "svelte": "^3.0.0" }, "main": "main.js", "repository": "https://github.com/ketupia/psg-firebase", "author": "Ketupia <ketupia@gmail.com>", "private": true }

构建过程

  1. npm 运行导出
  2. 提交到 github
  3. zeit/now 自动拉

    或者

“npm run zeit”,它是 sapper 导出并推送到现在。

0 投票
0 回答
719 浏览

javascript - Svelte and Sapper:带有隐藏元素的幻灯片

使用 Svelte,我想设置一个带有苗条过渡的滑动切换元素。

但我也希望在服务器端为 SEO 呈现默认的不可见文本。

所以我最终得到了这个技巧:

它有效,但这有点棘手,对我来说更像是一种解决方法。

此外,它会在页面加载时产生一些小故障,例如图标在立即回滚之前显示为“打开”。

我能以更聪明的方式实现它吗?

0 投票
3 回答
899 浏览

svelte - 苗条:应用程序/ld+json

使用以下代码:

在得到:

我已经尝试了这个 github 线程中的建议,结果相同:https ://github.com/sveltejs/svelte/issues/2438

0 投票
1 回答
487 浏览

javascript - Sapper 不断收到客户关于“this”关键字的警告?

不断从客户那里收到此警告,但不完全确定是什么原因造成的。任何正确方向的指导都会非常有帮助!

0 投票
1 回答
30 浏览

reactjs - github 页面的子文件夹向我显示旧的反应代码而不是新网站

我的 github 页面的子文件夹中有一个 html 页面,但我没有看到它。相反,我看到了一个我曾经在那里的旧反应应用程序。

知道那里发生了什么吗?也许我需要调整我的 github 页面上的一些设置?我认为这不是缓存问题,因为自从我将新站点的代码复制到 food 文件夹中已经 7 个小时了。

0 投票
2 回答
1352 浏览

svelte - 在 sapper/svelt 中是否有组件的快捷方式

在 nuxts/vue 中有一个别名 @ 和 ~ 表示应用程序的根目录。在 sapper/svelte 中是否有类似于 /very/deep/page/1/2/3/4 这样的深层路线的东西?我不必做类似的事情:

0 投票
1 回答
221 浏览

routes - 以前的路线显示在 Sapper 的当前路线中

我有两条路线/questions/profile. 在onDestroy()我调用的生命周期事件中console.log('destroyed')。当我在路由之间切换时,我每次都会在 Chrome 控制台中“销毁”。

问题是在/questions路由内部,我有复选框,使用bind:group={multiple_ids}. 因此,在选中/取消选中某个字段后,当我切换/question/profile路由时。路由的内容/question显示在/profile路由内部,此后 Chrome 控制台不再显示“已销毁”!这种行为对我来说似乎很奇怪。我不知道发生了什么。这是一个工作项目。请解决这个问题。谢谢

0 投票
1 回答
100 浏览

svelte - 静态生成的站点,覆盖基于会话的信息

我的网站大体上是一个静态网站,但我仍然想要身份验证和会话功能。我想有一种方法可以静态生成网站,但随后会覆盖诸如您未登录消息以在水合时以“用户”身份登录的信息,对吗?更重要的是它可以与预取一起使用吗?