javascript 简单的异步反应路由器v4示例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 简单的异步反应路由器v4示例相关的知识,希望对你有一定的参考价值。

import React, { PureComponent } from 'react'
import { Match, Miss, Redirect } from 'react-router'

export default class Routes extends PureComponent {
  constructor() {
    super()

    this.views = {}
  }

  loadView(fileName) {
    if (this.views[fileName]) {
      return this.views[fileName]
    }

    new Promise(resolve => require.ensure([], require => {
      resolve(require(`./views/${fileName}`))
    }))
    .then(View => this.views[fileName] = <View />)
    .then(() => this.forceUpdate())
    .catch(err => {
      console.error(err)
      throw new Error(err)
    })

    return <div />
  }
  
  render() { return (
    <div>
      <Match pattern="/" exactly component={this.loadView.bind(this, 'home')} />
    </div>
  )}
}

以上是关于javascript 简单的异步反应路由器v4示例的主要内容,如果未能解决你的问题,请参考以下文章

javascript 反应页面转换(假设反应路由器v4)

反应路由器 v4 默认页面(未找到页面)

用开玩笑酶测试反应路由器 v4

javascript 异步反应路由器组件加载

突出显示反应路由器 v4 中的默认链接

不匹配时反应路由器 v4 重定向