0
// This is straight from the overview.md in the react-router docs
var Router = ReactRouter;
var DefaultRoute = Router.DefaultRoute;
var Link = Router.Link;
var Route = Router.Route;
var RouteHandler = Router.RouteHandler;

var App = React.createClass({
    render: function () {
        return (
        <div>
            <header>
                <ul>
                    <li><Link to="inbox">Inbox</Link></li>
                    <li><Link to="calendar">Calendar</Link></li>
                </ul>
            </header>

            {/* this is the important part */}
            <RouteHandler/>
        </div>
        );
    }
});

var Inbox = React.createClass({
    render: function () {
        return (
            <div>
                This is the inbox
            </div>
        );
    }
});

var Calendar = React.createClass({
    render: function(){
        return (
            <div>
                This is the calendar
            </div>
        );
    }
});

var routes = (
    <Route name="app" path="/wish/" handler={App} >
        <Route name="inbox" handler={Inbox}/>
        <Route name="calendar" handler={Calendar}/>
        <DefaultRoute handler={Inbox}/>
    </Route>
);

Router.run(routes, Router.HistoryLocation, function (Handler) {
    React.render(
        <Handler/>,
        document.querySelector('#content')
    );
});

上記は非常に単純なページで、ユーザーがナビゲートすると受信ボックス コンポーネントが表示され、ナビゲートするとカレンダー コンポーネントが表示されます。ただし、実際には、ページには複数のコンポーネントと大量の jsx コードが含まれる可能性があります。

すべての異なるコンポーネントを分割し、必要な場合にのみ関連ファイルをダウンロードするためのベスト プラクティスは何ですか。つまり、上記の単純な例では、ユーザーが要求したときに受信トレイ (およびカレンダーなど) のコードのみをダウンロードしますか? JSX としてファイルは本質的にビューです。ユーザーにすべてのビューをダウンロードして 1 つだけを表示させることは、私が知っているすべてに反するようです。

私はネット上の例を見回しましたが、何百ものコンポーネントの巨大なファイルしか見ることができませんでした...

4

1 に答える 1