0

Я создаю сайт AngularJS, общающийся с REST API. Для REST API я использую ASP.NET Web API. Я также создал «Пустое веб-приложение ASP.NET». В этом проекте есть только HTML, js и CSS-файлы (и web.config). Я бы хотел, чтобы мои js и CSS-файлы были в комплекте и минитизированы, но я не хочу добавлять мини-файлы в index.cshtml. Является ли это возможным?Объединение и минимизация в angularjs spa без mvc

можно сказать, как добавить миниатюрные файлы в index.html.

шагов, за которыми я следовал.

1.Установка пакета.
Install-Package Microsoft.AspNet.Web.Optimization
2.Created BundleConfig класса и связки:

using System.Web.Optimization; 
    public class BundleConfig 
    { 
     public static void RegisterBundles(BundleCollection bundles) 
     { 
      bundles.Add(new ScriptBundle(new ScriptBundle("~/MyApp/Main") 
       .Include("~/MyApp/app.js") 
       .Include("~/MyApp/SampleController.js")); 
     } 
    } 

3.Register класса BundleConfig в начале приложения в global.asax

void Application_Start(object sender, EventArgs e) 
{ 
    BundleConfig.RegisterBundles(BundleTable.Bundles); 
} 

теперь я хочу, чтобы передать Main .js в мое приложение. Могу ли я добавить main.js в свой index.html, если да Как?
ли это, что я необходимому должен создать .cshtml, а затем обратитесь main.js использованием

@script.Render 

Есть какой-либо другой способ для объединения и преуменьшать мои другие, чем ASP.NET MVC файлы ??

+1

Я думаю, вам действительно нужно пометить технологии asp, чем angularjs. –

+2

Я знаю способ реализовать это, но я не буду рекомендовать его, потому что он слишком запутан. Вместо этого взгляните на глоток. Теперь вы переходите к угловым, так что забывайте о функциях mvc, угловые имеют лучшие реализации, чтобы ответить на ваши проблемы. – Sherlock

ответ

0

Прежде всего, вам нужно оптимизировать угловой код со ссылкой на этот вопрос: Angularjs minify best practice

После этого, вы должны собрать все ваши файлы Angular в пучок.

public static void RegisterBundles(BundleCollection bundles) { 
    bundles.Add(new ScriptBundle("~/angular").Include(
     "~/Scripts/first-file.js", 
     "~/Scripts/second-file.js", 
     "~/Scripts/third-file.js")); 

    BundleTable.EnableOptimizations = true; 
} 

Вы можете получить доступ к комплектный JavaScript-файл в * .cshtml со следующим тегом:

@Scripts.Render("~/angular") 

Here хороший блог-запись относительно этого вопроса.