Настройка проекта Aurelia и структура папок в Visual Sudio 2015: что происходит в wwwroot?

Я хочу начать играть с Aurelia и MVC 6 Web API с помощью Visual Studio 2015 RC, и я использую сообщение OdeToCode в качестве отправной точки.

Я понимаю идею новой папки wwwroot, но я в основном смущен тем, что должно или не должно быть там.

Моя первоначальная мысль заключалась бы в установке всех пакетов jspm, а также в исходных исходных файлах JavaScript за пределами папки wwwroot, а затем скопировать с помощью gulp все, что необходимо для запуска при разработке или связывании и копировании при развертывании.

Он будет выглядеть примерно так:

enter image description here

Но опять же, следует ли разместить index.html также в папке src? и config.js? Или я действительно затрудняю себе жизнь и должен просто развиваться из папки wwwroot?

Это пакеты jspm, которые меня путают; он чувствует себя не так, чтобы иметь такое большое количество файлов JavaScript в wwwroot, когда я планирую все равно связывать и минимизировать.

Короче: Какая будет предпочтительная структура папок для приложения Aurelia ASP.NET 5 в Visual Studio 2015?

Ответы

Ответ 1

Я потратил довольно много времени на это и, наконец, решил:

  • ApplicationName
    • ЦСИ
      • Api
        • Здесь у меня есть проект ASP.NET 5, который обеспечивает api, который будет использоваться приложением Aurelia. Вероятно, вам нужно включить CORS, чтобы избежать ошибок.
      • Client.Web
        • Здесь я начал работу с навигационным приложением Aurelia. Мы изменили папку dist на wwwroot. Папка jspm_packages находится за пределами wwwroot, а задачи gulp, которые поставляются с навигационным приложением скелета, по мере необходимости нуждаются в копировании на wwwroot.

Этот подход дал мне следующие преимущества:

  • Чистое разделение api и кода клиента.
  • Возможность развертывания api и клиента отдельно.
  • Возможность использовать все задачи gulp, которые входят в приложение навигации скелета
  • Удалить место для перехода к соглашениям об именах файлов Javascript (camelCase)

Недостатки этого подхода:

  • Запуск полного приложения сложнее. В настоящее время мне нужно нажать "Воспроизвести" в Visual Studio, чтобы запустить api, тогда мне нужно запустить gulp watch. Это не слишком большая сделка, потому что вы можете в основном оставить gulp watch за все время разработки.