问题标签 [nextjs]
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.
javascript - Next.js 在 getInitialProps 中返回 404 错误页面
目前我正在关注如何在 getInitialProps 中重定向用户的示例
https://github.com/zeit/next.js/wiki/Redirecting-in-%60getInitialProps%60
问题是,如果我想像这样返回 404,它将返回一个空白页面,而不是通常的 Next.js 404 错误页面。
请注意,我知道使用 ExpressJs 和使用 statuscode 404 是可行的,但是,对于这个项目,我不允许使用 ExpressJs,所以我需要使用典型的 nodejs writeHead 来做到这一点。
javascript - 使用 nextjs、featherjs 和 feather-reactive 需要更好的数据初始化逻辑
我正在尝试featherjs 和nextjs。现在不知何故,我可以使用 nextjs SSR 从服务器获取初始数据,并使用 feathersjs 订阅我的 api。
我现在真的不知道为什么它会起作用以及这里到底发生了什么。也许有人对此有更好的实施?还是我以错误的方式使用这些库?
这个想法是让组件呈现在第一次加载时由服务器呈现的初始道具,然后对于下一个请求,使用 observable 来获取状态。
这是我的书籍页面代码。它只显示书籍列表:
任何帮助,将不胜感激。
javascript - 在 NextJs 中访问服务器端代码中的静态资源?
我使用 NextJS 的静态渲染功能来生成我网站的静态版本,因此我想确保在页面的第一次渲染时提供正确渲染所需的所有数据。
我有许多博客文章,我已将它们作为 .md 文件存储在 /static 中,并希望在以下页面中访问它们:
但是如果尝试运行上面我得到以下错误:
This dependency was not found: * fs
所以我不确定我应该如何在服务器上访问这些静态资源..
service-worker - 如何将 Google Workbox 与 Next.js 一起使用?
我有一个 Next.js 应用程序,它当前正在使用 sw-precache 和 sw-precache-webpack-plugin 来生成服务工作者。
我想改用 Google Workbox 和 workbox-webpack-plugin。有没有人在 Next.js 上下文中成功地做到了这一点?
laravel - Axios 从 next.js 获取对 Laravel 端点的请求
我对我的 laravel 端点有以下请求:
我的 laravel 端点设置为:
我启动了我的 nextjs 服务器(端口 3000)和 laravel 服务器(8000),当我在浏览器中浏览到 localhost:8000/auth/login 时,我看到“登录调用”。但是,当我执行那个 axios 调用时,我得到一个状态 200ok 但没有响应数据。
知道我做错了什么吗?
javascript - 如何让 Next.js 和 redux-api 工作(使用 next-redux-wrapper)
我正在努力让服务器端渲染 (SSR) 与redux-api
. 该应用程序仅适用于客户端渲染 (CSR)。
要使 SSR 工作,我需要在 Next.js 的getInitialProps
函数中提供数据。我正在尝试将next-redux-wrapper
其绑定在一起。
当前状态:
我至少现在store
进入getInitialProps
了,但我收到了一条奇怪的Error: only absolute urls are supported
消息,我的 CSR(pre- withRedux
)版本的应用程序中没有。当然this.props.oneLesson.data
是空的。
makeStore
在服务器生成的调用上得到一个state
= undefined
,也许这是一个线索。
我也愿意用redux-api
其他类似的东西代替。
更新 1:通过使所有 URL 都填满,Redux 现在正在访问我的 API 端点。但是,对于 1 页重新加载,它调用makeStore
不少于 3 次,并且只有第一个调用包含正确的 slug,请参阅控制台输出:
更新 2:一个突破:返回一个承诺,getInitialProps
使 SSR 工作。现在客户端渲染正在发挥作用,这很有趣。
laravel - NextJS:子组件应该如何获取他们需要的数据?
如果我有一个页面,其中包含许多子组件,例如显示一些帐户信息的标题,我如何最好地获取该组件的数据?
如果我使用 componentDidMount 并向我的 laravel api 发出请求,那么数据应该在加载之前会有延迟。
如果我使用 getInitialProps ,那么我必须为每个页面设置一个端点来获取这些详细信息,然后总是必须将其传递下去。
是否有任何其他解决方案不会导致这两个问题?
nextjs - 为什么我的应用程序没有路由到它的自定义页面?下一个
我有一个nextjs
应用程序。我的页面文件夹看起来像这样
我的路线server.js
如下所示:
我也试过app.render(req, res, '/game', { gameId })
了,但也没有用。
我想路由到game.js
何时/games/1
被击中。该应用程序路由很好/games
,但我无法路由到单个游戏/games/1
。我得到nextjs
404
. 我错过了什么?在这种情况下如何nextjs
路由?
reactjs - 使用变量更新减速器中的状态
我正在构建一个简单的应用程序,它可以根据内容的状态展开和折叠内容部分。基本上,如果collapse = false,则添加一个类,如果为true,则添加一个不同的类。
我将 Next.js 与 Redux 一起使用并遇到了问题。我想根据传递动作的参数更新状态。它没有更新状态,我不确定为什么或更好的选择是什么。任何澄清都会很棒!
currentName 变量导致状态不更新的问题。我希望能够动态地更改每个部分的状态,这就是为什么我认为我可以像这样拥有一个变量和更新状态。
看来您不能对键/值对中的键使用变量。为什么是这样?动态更新状态的替代方法是什么?
javascript - 如何测试 babel 是否有效并且我的插件是否被执行
我正在Next.js
用于 React 应用程序的服务器端渲染(带有styled-components
),并且我使用 Babel 插件来显示我在代码中使用的组件的名称存在问题。
这是我的.babelrc
文件:
当我跑步时cross-env NODE_ENV=development concurrently "tsc --watch" next
我得到了这些行-.babelrc
在编译期间使用了含义:
但是一旦我去开发工具并看到一些styled-component
我可以看到这个:class="sc-iyvyFf gGaJAt"
但是在我的代码中我有这个定义:
从文档示例中可以看出 - 我应该得到类似... <button class="Button-asdf123 asdf123" /> instead of just <button class="asdf123" />.
但我没有。
深入研究后,我发现了这个问题(https://github.com/styled-components/styled-components/issues/1103#issuecomment-324302997),基于我在浏览器控制台中遇到的错误:
It seems that only the server code is being transpiled and not the client code
所以问题:如何测试 babel 是否正常工作并.babelrc
在所有地方都被使用?
PS在我的情况下,我在客户端获得的那些类sc-
在我的脑海中具有这个前缀含义styled-components
。所以我不确定插件是否.babelrc
完全有效,但我没有在 styled-components 的声明中设置任何特殊属性,因此得到了这个通用前缀sc-
更新这是我正在使用的自定义 next.conf.js