问题标签 [react-static-router]

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 投票
0 回答
92 浏览

reactjs - 使外部布局知道反应静态中的当前路线

我的应用程序具有这样的结构:

但是,我想让布局取决于加载的页面类型。

我知道this.props.location渲染的路线内部有一个,但我无法从外部访问它。

我阅读了有关提升状态的信息,但我不知道<Routes />组件是否可以这样做。

如何在布局组件中获取当前路线?

0 投票
1 回答
860 浏览

react-static - 错误:为 URL About (src\pages\About.js) 导出 HTML 失败:不变量失败

我将Switch路由器组件添加到我的项目中以设置默认页面。当我构建它时,会出现以下错误:

运行站点时不会发生这种情况(npm run start)。

更奇怪的是,仅在构建站点时发生,对于某些页面。即使我在构建之间没有更改任何内容,受影响的页面也会更改每个构建。

这里的路由器声明: App.js

环境:react-static v6.3.6

0 投票
0 回答
221 浏览

reactjs - 如何在 react-static 构建的应用程序中从 static.config.js 文件中定义的路由呈现菜单?

按照官方指南,应该是这样的简单:

我的下面的 static.config.js 文件是从基本模板中剪切下来的。只有到关于页面的路线:

但是什么都没有渲染。

如果我将 myRoutes 变量设置为内联它可以工作。例子:

它接缝的函数useRouteData()没有被调用,但我不知道为什么。

该站点全部由静态页面组成,可从站点中的任何页面访问,因此我认为如果我将所有内容都放入配置文件中,它将分割代码,每个模板一页,并提供构建菜单的信息。我也不熟悉静态反应构建,所以可能没有像我想象的那样使用模板。

0 投票
1 回答
685 浏览

javascript - 不变量失败:您不应该使用外面使用静态路由器

我在尝试使用 reactDomServer 和静态路由器进行服务器端渲染时遇到错误。

我得到以下输出:

我的服务器:

我在客户端使用 BrowserRouter,并且使用相同的组件“App”可以正常工作。但在服务器端我遇到了这个问题。

** 编辑 **

这是我的应用程序组件代码:

然后是我的容器

0 投票
0 回答
118 浏览

reactjs - 如何在服务器端渲染中更改 BrowserRouter

当我更改为 SSR 时,它有问题。似乎设置完成得很好,因为终端显示'yarn run v1.22.10 $ node server/index.js App 在 8000 上启动'

在此处输入图像描述

但是当我输入 url 时:http://localhost:8000/ 它显示错误我猜 React-Router-dom 有一些问题。

你能给我一个解决这个问题的建议吗???

服务器/index.js

ThemeProvider.js

包.json 在此处输入图像描述

0 投票
0 回答
76 浏览

reactjs - 在带有 react-router 的 react-static 中,如何访问路由模板中的 props.location?

我对 react-static 非常陌生,并且正在尝试调整现有的 react-router 应用程序以使用它。我的static.config.js设置为:

然后index-react-static.js与来自的样板相同react-static create

然后AppReactStatic.js作为:

但是,ObjectDetailPage接收的道具不包括location(或historymatch)。我的设置中缺少什么?

我的错误的堆栈跟踪似乎确实表明withRouter正在包装我的组件: