反应组件和模块导出

时间:2016-03-08 06:39:54

标签: javascript reactjs module

我不明白module.exports如何只能导出一个对子组件具有依赖性但仍然在DOM中呈现的组件,尽管该子组件从未被导出过。

// component.js

var SubComponent = React.createClass({
...
    });

var Component = React.createClass({
    ...
    render: function () { 
    return(
        <div><SubComponent /> stuff</div>`)
        }});

module.exports = Component

// main.js

    var Component = require('./component.js');

    var MainContainer = React.createClass({
    render: function () {return (
    <Component />)
    }})

1 个答案:

答案 0 :(得分:7)

您在Component文件中只使用一个组件(main.js)。 SubComponent未在component.js之外使用,因此无需导出。如果您想在SubComponent文件中使用main.js,可以像这样使用它:

// component.js

(...)
module.exports = {
    Component: Component,
    SubComponent: SubComponent
}

// main.js

 var Component = require('./component.js').Component;
 var SubComponent = require('./component.js').SubComponent; (...)

然后,您可以直接在SubComponent

中使用main.js