问题标签 [ssg]
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.
api - (SSG-WSG) API 中的技能框架与网站显示的技能框架不符
API 中的技能框架与网站中显示的技能框架不符。例如,API
https://public-api.ssg-wsg.sg/skillsFramework/sectors只显示 29 个扇区,但网站https://www.skillsfuture.gov.sg/skills-framework
有 34 个扇区
API 会与网站中的数据同步吗?
reactjs - 如何避免加载不存在的静态页面?
我正在制作电子商务 Next.js 静态应用程序。
对于我的产品页面,我使用增量静态生成(我将进一步称其为 ISG),fallback: true
并简单useRouter
地显示加载组件(如微调器或其他东西,没关系)。ISG 对于数据更新频繁的静态站点(如添加评论、新产品等)非常有用,但如果我没有产品路径(例如/products/nike-pants-12345
),页面将返回“无限加载”和错误。
错误如下。
如果我们看一下控制台,我们可以看到类似TypeError: Cannot read property '_id' of null
:这意味着应用程序没有找到具有请求 _id 的产品(可能是名称、slug 等)。
所以,问题是我怎样才能避免这种情况,应该避免这种情况吗?
reactjs - 错误:动态 SSG 页面需要 getStaticPaths,而“xxx”缺少 getStaticPaths。NextJS
"Error: getStaticPaths is required for dynamic SSG pages and is missing for 'xxx'"
当我尝试在 NextJS 中创建页面时出现此错误。
我不想在构建时生成任何静态页面。那么为什么我需要创建一个'getStaticPaths'
函数呢?
reactjs - Next.js,在按钮单击时发出 POST 请求(SSG)
我正在做一个 ssg 网站,它没有后端,但它确实开始具有一些从另一台服务器获取一些数据的功能。我检查了 SWR 并且它工作正常,问题是我需要在按钮单击时发出发布请求,它给我一个错误:
我看到的是我可以创建一个函数组件,在其中设置一个调用,然后在单击按钮时安装这个组件,它可以工作,但我对这种方法有疑问。这可能是为了处理获取请求,但我发了一个帖子。
ExportComponent 在页面或另一个组件中呈现。
这是错的吗?有没有更好的办法?
next.js - 可以在博客中使用 getStaticProps 在发布新帖子时进行更新吗?
所以我有点困惑getStaticProps
。
getStaticProps
在构建时运行以生成静态页面。
我的问题是,如果我有一个在发布新帖子时更新的博客,我不应该使用getStaticProps
,对吗?因为它只在构建时被调用,然后永远不会被调用来获取新的可用帖子。在这种情况下,我应该在getServerSideProps
客户端使用或获取数据useSWR
,对吧?
next.js - 是否可以使用 API 路由在 Next.JS getStaticProps/getStaticPaths 中构建页面?
我正在使用 MongoDB 制作静态 Next.JS 应用程序。
在我的静态 Next.JS 应用程序中,我可以使用 api 路由来构建页面吗?例如,使用 GET 方法获取 getStaticProps 中的产品?或者这是不好的方法。
现在我正在使用文档中的经典方式(直接调用数据库find
等)。
vue.js - 网站的一部分可以是静态网站生成的,而另一部分是传统的水疗中心吗?
所以,我在 Nuxt 建立了一个网站并使用了 ssg。这很棒,但对于另一个网站,90% 的内容都是静态文本和图像,但我想要一个客户登录门户,他们可以在其中查看其产品的状态。以我的理解,我不明白这怎么可能是 ssg 。那么可以两者兼得吗?
next.js - Storyblok 的实时内容更新在生产环境 Next.js 中不起作用
我正在使用 Next.js (SSG) 和 Storyblok (Headless CMS) 开发 JAMstack 网站,并使用 Storyblok Content Delivery API 从 Storyblok 获取内容。
我创建了具有 Storyblok 配置和 Bridge 功能的 Storyblok 服务。
StoryblokService.js
我正在调用桥接函数并在从 app.js 调用的 layout.js 中获取布局内容。
应用程序.js
Storyblok 桥在 layout.js 中被这样调用
布局.js
问题陈述
使用 Storyblok 进行实时内容更新,即如果我更改 Storyblok 中的一些内容并发布它,那么当我重新加载页面时,Next.js Web 应用程序中的内容也会更新,在开发/本地环境中运行良好,但是生产环境中的相同操作或将 Next.js 代码发布到 Vercel 不起作用。
似乎配置错误,或者可能与 Storyblok webhook 或工作流有关。
任何帮助,将不胜感激。提前致谢!
.htaccess - Next.js SSG 的正确 .htaccess 设置捕获所有路由
我已经建立了一个网站,使用 Next.js 和 SSG - 静态站点生成。我在 Apache 服务器上为网站提供服务,因此,由于这个答案,我使用以下 .htaccess 配置:
它一直运行良好。
但最近,需要一个管理页面,即通常的 CRUD。我在没有考虑 SSG 的情况下开发它(因为实际上不需要它),创建了我自己的自定义路由器并使用Next.js 的 catch all routes来处理这个管理页面的所有内容,我称之为dashboard。
因此,在我构建的网站上,我有一大堆page.html
文件和一个/dashboard/[[...dashboard]].html
文件,即 CRUD 本身(所有子页面和内容都是动态导入的) - 因此,每个以开头的链接/dashboard
都将通过该文件处理。
所以,问题是:浏览网站上的链接并进入仪表板,一切正常。但是,如果我尝试直接访问其中的任何链接/dashboard
(例如,包括其自身和 subroutes: /dashboard/users
),它根本不起作用。使用提供的.htaccess
配置,它直接进入 404。
我已经尝试了添加到 .htaccess 的一些不同配置,但到目前为止都没有工作(它仍然直接进入 404,或者浏览器显示错误 ERR_TOO_MANY_REDIRECTS):
这个几乎工作了......但仪表板本身没有做任何事情(没有子页面被渲染):
重要提示:整个事情在本地开发服务器上完美运行。
如果有人对我如何解决这个问题有任何提示,我将不胜感激!