用react-router做按需加载无法显示页面

#1

做按需加载时可以取到需要加载的js文件,却无法显示页面是怎么回事呀?
以下是我的router代码。

{
            path: '/test.htm',
            getComponents: (location, cb) => {
                require.ensure([], (require) => {
                    cb(null, require('./Test/components/Test'));
                })
            }
}

但是如果我按下面这种写法做,页面就能显示出来 (但是就不是那种按需加载了) 。

import Test from './Test/components/Test'
{
            path: '/goodsDetail.htm',
            getComponents: (location, cb) => {
                require.ensure([], (require) => {
                    cb(null, require(Test)
                })
            }
}

我的Test.js是下面这样的(render方法不执行)。

import React from 'react'

const Test = React.createClass({
	render() {
		return (
			<h1>Test</h1>
		)
	}
});

export default Test;

求大神帮忙看一看是怎么回事呀。

#2

cb(null, require(’./Test/components/Test’).default); 在这个后面加上default 因为你是ES的语法。。。

#3

兄弟 我加了 还是 首次加载某页面 不会显示。

第二次进去就会显示, 但是render()方法就会跑两次

#4

'./Test/components/Test’这个模块是怎么导出的,导出语句是export default吗?