2017-12-14 5 views
0

、私は、私は多くのJSファイルと、大きなバンドルを定義することができますNuGetパッケージを使用しています新しいAsp BundlerMinifierを使用して環境に応じて多くのスクリプトタグを自動的にレンダリングできますか?現時点では

bundles.Add(new ScriptBundle("~/Bundles/js/PartOfMyGiantAngularApp").Include(
    // messages 
        "~/App/messages/service/messageCache.module.js", 
        "~/App/messages/service/messageCache.service.js", 
        "~/App/messages/message-list/message-list.module.js", 
        "~/App/messages/message-list/message-list.component.js", 
        "~/App/messages/message-detail/message-detail.module.js", 
        "~/App/messages/message-detail/message-detail.component.js", 
        "~/App/messages/message-edit/message-edit.module.js", 
        "~/App/messages/message-edit/message-edit.component.js", 
        "~/App/messages/message-create/message-create.module.js", 
        "~/App/messages/message-create/message-create.component.js", 
        "~/App/messages/message.module.js" 
) 

と私のメインのHTMLファイルにそれらのすべてを引っ張っ:

@Scripts.Render("~/Bundles/js/PartOfMyGiantAngularApp.js") 

プロダクションで1つのファイルを生成します:

<script src="/Bundles/js/PartOfMyGiantAngularApp.js"></script> 

または複数のスクリプトタグをレンダリングします。私のバンドルの設定で環境タグをメインのHTMLページ内の各ファイルを指定するために、両方持つことなく、新しいビルド時バンドラー/ Minifierを使用した場合

<script src="/App/messages/service/messageCache.module.js"></script> 
<script src="/App/messages/service/messageCache.service.js"></script> 
<script src="/App/messages/message-list/message-list.module.js"></script> 
<script src="/App/messages/message-list/message-list.component.js"></script> 
<script src="/App/messages/message-detail/message-detail.module.js"></script> 
<script src="/App/messages/message-detail/message-detail.component.js"></script> 
<script src="/App/messages/message-edit/message-edit.module.js"></script> 
<script src="/App/messages/message-edit/message-edit.component.js"></script> 
<script src="/App/messages/message-create/message-create.module.js"></script> 
<script src="/App/messages/message-create/message-create.component.js"></script> 
<script src="/App/messages/message.module.js"></script> 

はどのように我々は、DEVモードでは、この自動複数のファイルを入手できますか? 私はそれが道を尽くして、それらを古いもののようにすることを望みます。 JSコードの1行をデバッグするのは難しいですが、それはどのファイルから来たのか分かりません。

それは非常にうまくここに書かれています:

https://docs.microsoft.com/en-us/aspnet/core/client-side/bundling-and-minification?tabs=visual-studio%2Caspnetcore2x

の下:私たちはこのようなものを行う必要があります環境ベースのバンドルおよび縮小

<environment include="Development"> 
    <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" /> 
    <link rel="stylesheet" href="~/css/site.css" /> 
</environment> 

はこれがありますJSファイルがたくさんあるときの恐ろしい解決策!

+0

ちょっとした質問ですが、ソースマップをチェックアウトしたことはありますか?私は実際には行っていませんが、ソースマップでは、基本的に、ミニット化されたファイルをその状態に戻すことができます。あなたは '' sourceMap ':true'を設定する必要があります。例えばChromeでのデバッグの場合、 'Enable Source Maps'をチェックするだけでgoogleと違っているかもしれませんが、作業方法は – thmshd

+0

です。 MINIFIEDファイルをデバッグするのに最適ですが、私に与えられているのは、まだ十分ではないファイル 'js.js'で読めるエラーです。 – Worthy7

+0

ああ、私は「JSコードの1行をデバッグするのは難しい」と誤解していました。私はあなたが細かいファイルについて話したと思いました:-) – thmshd

答えて

0

私はあなたがバンドルを無効にしたいと考えています。 RegisterBundlesメソッド(App_Startフォルダー内のBundleConfigクラス)にあります。 これを追加すると、バンドルが無効になります

BundleTable.EnableOptimizations = false; 
+0

バンドルを無効にしたいのですが。新しいASP.NETコアバンドルラーではなく、古いものです。 – Worthy7

関連する問題