2009-10-06 7 views
12

私がアプリケーションを開発するときは、jquery-1.3.2.jsを使いたいです。それを配備するときは、jquery -1.3.2.min.js?jquery-1.3.2.jsとjquery-1.3.2.min.jsを切り替える

手動でコメントを付けたりコメントを外したりすることなく2つの間を切り替える最も良い方法は何ですか。

ありがとうございました。

+2

なぜあなたは常にミニワンを使用していませんか? – recursive

+0

時々、私はいくつかのjquery関数にデバッグしたい、私は非分かりやすいものがより読みやすいと思う。 –

答えて

2

たとえば、jquery.jsの両方のファイルに名前を付けて、いくつかのフォルダ(libs)に入れてください。 libフォルダをデプロイしないでください。

+0

シンボリックリンクを使用するだけです。 –

+0

Windowsにはシンボリックリンクがありますか? – middus

2

誰かがこの答えをasp.netに翻訳できると確信しています。自分のプロジェクトに定義したAPPLICATION_ENVIRONMENTに基づいて条件付きで行います。 asp.netにも同様のことがあるのか​​どうかはわかりませんが、プロダクションサーバーにいる場合は.minを提供でき、開発/テストマシンでは完全なライブラリを提供できます。

1

あなたがプログラムで宣言を追加している場合は、最良の方法は

#if DEBUG 

コンパイラディレクティブを使用することです。 DEBUG領域では、完全に展開されたライブラリを使用し、非DEBUG(リリースモードでコンパイルして公開する場合)に.minバージョンを置きます。次に、ライブに行くときにリリースをコンパイルすることを心配する必要があります。

別のリリース環境用に個別の.configファイルを用意し、そこにjavascriptを指定してください。

MSDN link to compiler directives.

+0

これは私の答えで話しているのと同じようなものです。 – gnarf

+0

そうです。私は2つの選択肢を提案していますが、私は例とリンクも含めました。また、これは、asp.net-mvcというタグが付いているので、私の答えは.net特有のものでした。 本当にそうではありません。 – Evildonald

0

あなたはjquery.jsとしてスクリプトに名前を付けることができます。 2つのjsファイルを追加します。最初はjquery.js.debug、その他のonw jquery.js.releaseという名前になります。そして、アプリケーションをコンパイルするときには、適切なjsファイルを使用します。

私はweb.configファイルを変更するために使用しています。追加情報はhereとすることができます。

0

djangoを使用している場合は、django-compressを使用してこれを自動的に処理できます。

8

JavaScriptファイルを読み込むためのHtmlHelper拡張メソッドがあります。私はまた私のコンテンツ内のすべてのJSファイルを取るビルドタスクを持っているので、私は/この規則を使用することができます

<%= Html.JavascriptTag("jquery-1.3.2") %> 
<%= Html.JavascriptTag("general") %> 

:それは非常に簡単のように呼ばれている

public static string JavascriptTag(this HtmlHelper html, string javascriptName) 
{ 
    var format = "<script src=\"/Content/Scripts/{0}.js\" type=\"text/javascript\"></script>\r\n"; 

#if (!DEBUG) 
    javascriptName += ".min"; 
#endif 

    return string.Format(format, javascriptName); 
} 

...次のようになりますscriptsディレクトリに移動し、それらを縮小し、.minをファイル名に挿入します。

あなたはその豪華さを持っていない場合、あなたはそうのようなバリエーションを使用することができます。その後、同様に呼び出すことができ

public static string JavascriptTag(this HtmlHelper html, string devFileName, string liveFileName) 
{ 
    var format = "<script src=\"{0}\" type=\"text/javascript\"></script>\r\n"; 

    var fileNameToUse = devFileName; 
#if (!DEBUG) 
    fileNameToUse = liveFileName; 
#endif 

    return string.Format(format, fileNameToUse); 
} 

<%= Html.JavascriptTag("/Content/Scripts/jquery-1.3.2.js", "/Content/Scripts/jquery-1.3.2.min.js") %> 
<%= Html.JavascriptTag("/Content/Scripts/general.js", "/Content/Scripts/general.min.js") %> 

Anは上記であるアプローチのボーナスを追加しましたライブラリのCDNを使用することができます。

<%= Html.JavascriptTag("/Content/Scripts/jquery-1.8.2.js", "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.2.min.js") %> 
関連する問題