2

私のrequire.configでは、定期的に使用するいくつかのパスの短縮形を作成しています:

require.config({
    paths: {
        text: 'components/requirejs-text/text',
        url: 'config/url',
        List: 'modules/List/main'
        ...

次に、個々のページ (個別のスクリプト ファイル内) で、次のようにモジュールをインスタンス化します。

require(['List'], function(List){ new List; }); 

私の計画は、すべてのファイルを 1 つのファイルに最適化し、それを要求して、私の例のようにモジュールをインスタンス化することでしたが、require.config のパスはもはや実際には関連していないため (今は main.build.js しかないため) 、どうすればよいかモジュールをインスタンス化しますか?

更新: 言い換えてみましょう:

最適化されたビルド スクリプトの外部でモジュールをインスタンス化しようとしています。

4

3 に答える 3

1

モジュールを含めたい場所はどこでもList、最適化されたファイルを指す新しいパス構成を作成するだけです。

require.config({
    paths: {
        'List': 'js/myApp' 
    }
});
require(['List'], function(List) {
    ...
});
于 2013-04-10T22:22:06.617 に答える
0

アプリケーションをインスタンス化するappInit.jsというファイルが1つあると思います。その後、他のすべてのモジュールは要件に応じてインスタンス化する必要があり、すべてのmodule.jsからモジュールをインスタンス化することはお勧めできません。

アプリケーションの単一インスタンスを考慮し、他のすべてのインスタンスはコンポーネント、サービスなどとしてこのアプリケーションに関連付ける必要があります。

すべての開発者には独自のコーディング スタイルがあります。使い慣れたものを選択してください。

モジュールのパスについて心配している場合、ビルド後、パスはモジュールの名前に過ぎず、機能するはずですが、動的にロードまたは作成されたモジュールは機能しなくなります。

于 2013-04-02T15:43:53.173 に答える