working section scripts script not net mvc from asp javascript asp.net-mvc-4 bundle

section - razor javascript



Organizando javascripts personalizados en asp.net mvc 4 (2)

Soy nuevo en mvc 4 y me pregunto dónde debo colocar mis archivos javascript personalizados. Por ''personalizado'', me refiero a los scripts que solo se usan en Vistas específicas o PartialViews.

Yo uso Áreas también, así que eso suma la complejidad. Estaba pensando en colocar mis scripts en la carpeta Script en la raíz de la aplicación y luego en una subcarpeta personalizada.

¿Cómo haría referencia a los scripts en mis vistas? ¿Debo usar paquetes personalizados?


Puedes organizar tus scripts en la carpeta Scripts :

  • ~ / Scripts / Inicio / foobar.js
  • ~ / Scripts / Admin / baz.js
  • ...

¿Debo usar paquetes personalizados?

Claro, puedes agrupar los scripts que siempre van juntos.


Creo que agregar tus scripts a una carpeta personalizada en tu carpeta es el camino a seguir. puede crear un nuevo paquete en el archivo appstart/BundleConfig.cs la siguiente manera:

bundles.Add(new ScriptBundle("~/bundles/custom").Include( "~/Scripts/Custom/myCustom.js", "~/Scripts/Custom/myCustom2.js"));

y luego agregar el bundle a su vista de esta manera:

@section scripts{ @Scripts.Render("~/bundles/custom") }

esto se procesará en la línea @RenderSection("scripts", required: false) en su archivo de layout .

O
Para llamar solo un script específico para su view puede hacer:

@section scripts{ <script src="~/Scripts/Custom/myCustom.js"></script> }

nota: puede arrastrar el archivo de script desde el solution explorer a la sección. No tienes que escribir todo el camino.
EDITAR - parece importante, así que copié esto de mi último comentario:
para usar la minification necesita agregar su script a la tabla de paquetes y agregar BundleTable.EnableOptimizations = true; al archivo BundleConfig o al conjunto <compilation debug="false" en su archivo web.config .