【问题标题】:React Starter Kit error - page not foundReact Starter Kit 错误 - 找不到页面
【发布时间】:2018-01-19 10:49:10
【问题描述】:

我从 react-starter-kit 项目创建了一个新路由,它异步获取一些数据,然后渲染它,但一秒钟后页面重新加载并显示一条消息“页面未找到 - 抱歉,但页面您尝试查看的内容不存在”。

在控制台中我看到 - “警告:文本内容不匹配。服务器:“余额”客户端:“找不到页面”

async function action() {

let bittrex = new ccxt.bittrex ({
    'apiKey': '',
    'secret': ''
})

try {

    // fetch account balance from the exchange
    let bittrexBalance = await bittrex.fetchBalance ()
    /**** commenting above and uncommenting this block stops it from happening.... 
    let bittrexBalance = {};
    bittrexBalance.info= [];
    let currency = {};
    currency.Currency = "BTC";
    currency.Value=999;
    // output the result
    bittrexBalance.info.push(currency);*/
    console.log ('balance', bittrexBalance)

    let balances = [];
    balances.push(bittrexBalance)
    return {
        title: "Balances",
        component: (
            <Layout>
                <Balances balances={balances} />
            </Layout>
        ),
    };


} catch (e) {
    console.log('SOME sort of error', e);
}

有人知道这可能是什么吗?

编辑添加,我现在意识到,如果我禁用 Javascript,一切都会完美运行......

似乎是通过通用路由器运行了两次。第一次

这是迄今为止我发现的唯一线索...我不明白为什么它会在页面加载后重新加载...

页面未找到错误来自它正在经历:

catch (e) 第二次...我怀疑 ccxt 库中发生了一些事情,但问题实际上是因为页面以某种方式重新加载了它被第二次调用...

【问题讨论】:

  • 嗨,你的 sn-p 并没有告诉我太多。如果您的服务器端渲染 (SSR) 代码路径无法获取、加载、知道相同的数据,但您的客户端可以,则会发生此错误——当您点击刷新时,F5,着陆从其他网站或类似网站。 你的服务器知道所有数据吗?
  • @langpavel 是的,我正在点击 f5,页面从上面的服务器端代码正确加载。然后它以某种方式刷新,我得到“页面未找到错误”,如果我禁用 Javascript,则不会发生这种情况
  • 那么你已经解决了一半的问题。您的客户端无法获得与服务器相同的数据,然后在客户端代码挂载后,客户端重新执行路由器和客户端上的路由器决定呈现不同的东西。您的服务器和客户端数据获取代码之间的成本很低。

标签: reactjs react-starter-kit


【解决方案1】:

看来您必须先致电await bittrex.loadProducts(),然后才能提取余额。

编辑:似乎bittrex.loadProducts() 也已被bittrex.loadMarkets() 重命名 更多信息this issue on github

【讨论】:

  • fetchBalance 在里面调用 loadMarkets。
【解决方案2】:

您的服务器代码发生异常,这变成拒绝路由,因为action方法返回undefined,所以服务器将通过- 下一条路线不适合,最后到达 not found 路线。

【讨论】:

  • 谢谢你,这似乎确实是页面发现错误的原因!
猜你喜欢
  • 1970-01-01
  • 2017-11-08
  • 2017-07-28
  • 2018-03-04
  • 1970-01-01
  • 2017-03-23
  • 1970-01-01
  • 1970-01-01
  • 2018-05-12
相关资源
最近更新 更多