Включить компиляцию TypeScript в проекте библиотеки классов Asp.Net Core 2 - PullRequest
0 голосов
/ 24 апреля 2018

У меня есть несколько существующих проектов библиотеки классов Asp.Net Core 2. Теперь я хочу включить в них компиляцию TypeScript, чтобы я мог добавить сгенерированные файлы js в качестве ресурсов в библиотеку. (Js для сценариев на стороне сервера Cosmos db, а не для веб-приложения).

Я добавил файлы package.json и tsconfig.json, но VS 2017 игнорирует их при щелчке правой кнопкой мыши, и опция «Установка пакета» не отображается.

Я могу создать отдельное пустое веб-приложение Asp.Net Core, чтобы компиляция машинописи работала, но тогда у меня возникла проблема совместного использования файлов js с моей библиотекой классов.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 25 апреля 2018

Я достиг определенного прогресса в этом (я думаю).

Я изменил элемент проекта с

<Project Sdk="Microsoft.NET.Sdk">

до

<Project Sdk="Microsoft.NET.Sdk.Web">

Затем мне пришлось изменить тип вывода обратно на библиотеку классов. Затем нужно было убедиться, что для каждого из файлов машинописного текста в проекте есть элементы TypeScriptCompile.

<ItemGroup>
  <None Remove="Scripts\spSampleForTest001.ts" />
</ItemGroup>
<ItemGroup>
  <TypeScriptCompile Include="Scripts\spSampleForTest001.ts" />
</ItemGroup>

Это работает, но я не уверен на 100%.

Установка Sdk = "Microsoft.NET.Sdk.Web" представляется ключевой.

0 голосов
/ 24 апреля 2018

Я считаю, что это невозможно из коробки.Вы можете найти некоторые обходные пути по адресу: https://github.com/Microsoft/TypeScript/issues/11

Вы также можете использовать некоторые компиляторы, такие как babel, с js-runner или инструменты для сборки, такие как webpack.

Аналогичный вопрос: Как заставить Visual Studio 2017 скомпилировать TypeScript при сборке в проекте библиотеки классов (новый стиль .net core .csproj)

...