2016-07-20 7 views
0

CODE:私はNode.jsのを使用してきたし、必要このjavascript動的ファイルインクルードシステムに問題はありますか?

function stop(reason){ 
    throw(reason); 
} 
function pragma_once(file_name){ 
    if(window[file_name] !== undefined) 
     stop("Duplicate symbol: "+file_name); 
    window["__INCLUDE__"+file_name]=true; 
    return true; 
} 
function include(file_name){ 
    var x = document.createElement('script'); 
    x.src = file_name; 
    document.getElementsByTagName("head")[0].appendChild(x); 
} 

()、クリーンな追跡が容易と読みやすく私のコードを維持するために本当に便利なように見えました。しかし、私は、Web用のjavascriptが "require()"を持っていないことに気付いた。私はrequirejsがWeb javascriptにrequire()機能を追加することを発見しました。しかし、私はライブラリを使用することはそれがかなりマイナーな作業であるように有用であるかどうかわかりません。だから、私は必要なもののように動作するものを書きました(もっとC#includeに似ています)。私が気づいた唯一の本当の問題は、すべてが非同期にロードされることです。これは最終版ではありませんが、この機能がどのように変わるのかという考え方は変わりません。

わからない問題がありますか?これを使用しない理由は何ですか?

+1

私は既存のモジュールバンドラを使用したいと思います。ブラウジング、ウェブパックまたはロールアップ。 –

+0

Node.jsにはサーバー側であるためrequire()があります。ファイルシステムを再生する必要がある場合、requireの行為ははるかに簡単です。クライアントサイドのファイルには、より多くの複雑さが必要です。私は@ FelixKlingの提案を支持する。 – apokryfos

答えて

0

私はこの3つの理由のために、人々がこれをしないように他人に伝えている主な理由があると思います。

  1. これは、このスクリプトに対して別のHTTP GETリクエストを行い、ページの最初の読み込み中ではありません。

  2. 私が見たことから同じファイルを複数回含むことは可能です。

  3. 機能が必要な場合は、WebフレームワークやJavaScriptを拡張したスクリプト言語で、より最適化されたバージョンを見つけることができます。

関連する問題