Javascript 在react路由器配置中写入异步组件以进行延迟加载
我是新来的。尝试延迟加载组件。Am使用服务器端渲染和react路由器配置。我需要延迟加载组件 asyncComponent.jsJavascript 在react路由器配置中写入异步组件以进行延迟加载,javascript,reactjs,react-router-v4,Javascript,Reactjs,React Router V4,我是新来的。尝试延迟加载组件。Am使用服务器端渲染和react路由器配置。我需要延迟加载组件 asyncComponent.js import React, { PureComponent } from 'react'; export default class extends PureComponent { constructor(props) { super(props); this.state = { Component: null } } componentWillMoun
import React, { PureComponent } from 'react';
export default class extends PureComponent {
constructor(props) {
super(props);
this.state = {
Component: null
}
}
componentWillMount() {
if(!this.state.Component) {
this.props.moduleProvider().then( ({Component}) => this.setState({ Component }));
}
}
render() {
const { Component } = this.state;
//The magic happens here!
return (
<div>
{Component ? <Component /> : ''}
</div>
);
}
};
我已经参考了他的例子[
这正在引发异常。这是正确的方法吗?您能发布您面临的错误吗?只有字符串可以分配给组件。关键依赖项:依赖项的请求是一个表达式将
Home
的声明更改为const Home=;
警告在./client/routes.js 24:11-28:5关键依赖项:t依赖关系的请求是一个表达式
import React from 'react';
import App from './app';
import asyncComponent from './asyncComponent';
const Home = asyncComponent.moduleProvider(import('./components/Home'));
const routes = [{
component: App,
routes: [
{
path : '/',
exact: true,
component: Home
}
]
}];
export default routes;