Ошибка "Дублирующий идентификатор" при компиляции файлов определений машинописи в папку wwwroot

Я создал проект ASP.NET 5, который я использую в основном для машинописного приложения.

Я использую grunt и grunt-ts для компиляции.

У меня есть папка 'src', в которой содержатся все мои машинописные файлы

grunt-ts компилирует все в папке 'src' и объединяет это в один файл js, который затем помещается в папку wwwroot. Файл определения машинописи также создается и помещается в папку wwwroot.

компиляция с помощью grunt / grunt-ts работает безупречно.

Проблема: когда файл определения существует в папке wwwroot, Visual Studio IDE начинает выдавать много ошибок "Дубликат идентификатора". Это конечно из-за файла определения.

Есть ли способ заставить Visual Studio игнорировать папку wwwroot (или любую другую папку) для ее компиляции IDE/ внутреннего машинописного текста?

2 ответа

Решение

Вы хотите добавить tsconfig.json файл в корне вашего проекта, который содержит следующее:

{
  "compilerOptions": {
    "noImplicitAny": true,
    "noEmitOnError": true,
    "removeComments": false,
    "sourceMap": false,
    "module": "commonjs",
    "target": "es5"
  },
  "exclude": [
    "bower_components",
    "node_modules",
    "wwwroot"
  ]
}

Файл tsconfig.json отвечает за настройку компиляции TypeScript.

  • compilerOptions - Параметры компиляции из TypeScript в JavaScript.
    • "noImplicitAny": true - не разрешать неявные переменные. Заставьте их быть явно объявленными.
    • "noEmitOnError": true - остановить обработку при ошибке.
    • "removeComments": false - не удалять комментарии.
    • "sourceMap": false - не создавать файлы исходных карт (оставьте это для плагина gulp).
    • "module": "commonjs" - использовать модули Common JS.
    • "target": "es5" - скомпилировать в ECMAScript 5.
  • exclude - исключает сканирование папок bower_components, node_modules и wwwroot из файлов определения TypeScript (.ts) или определения TypeScript (.d.ts).

Есть ли способ заставить Visual Studio игнорировать папку wwwroot (или любую другую папку) для ее компиляции IDE/ внутреннего машинописного текста?

Исключите это из своего проекта.

Другие вопросы по тегам