Я получаю предупреждение ...
Экспериментальная поддержка декораторов - это функция, которая может быть изменена в будущем выпуске. Установите параметр'ериментальный Декораторы ', чтобы удалить это предупреждение.
... хотя мои compilerOptions в tsconfig.json имеют следующие настройки:
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
Что странно, так это то, что некоторые случайные классы, которые используют декораторы, не показывают это предупреждение, а остальные в том же проекте.
Что может вызвать такое поведение в компиляторе TypeScript?
.ts
файл в угловой проект вручную; если это так, компиляция TS по умолчанию конфликтует с Angular CLI. Щелкните правой кнопкой мыши файл -> Свойства -> Действие сборки: нет. Затем перезапустите VS, если это необходимо.code .
) в неправильном каталоге. Все казалось нормальным - я видел и мог редактировать все свои файлы - поэтому сначала я не заметил, что что-то «не так». Но я получил это глупое предупреждение «Экспериментальные декораторы» об одном - и только об одном! - угловой компонент. Я вышел из VSCode, перезапустился (code .
снова) в ПРАВИЛЬНОМ каталоге (мой корень проекта Angular) .. и предупреждение исчезло.Ответы:
Хотя VS Code - отличный редактор для проектов TypeScript, его нужно время от времени пускать в ход. Часто, без предупреждения, некоторые файлы приводят его в бешенство и жаловаться. В основном исправление заключается в том, чтобы сохранить и закрыть все открытые файлы, а затем открыть
tsconfig.json
. После этого вы сможете снова открыть файл-нарушитель без ошибок. Если это не работает, вспенить, промыть и повторить.Если вы
tsconfig.json
указываете свои исходные файлы с помощьюfiles
массива, IntelliSense будет работать правильно только в том случае, если на рассматриваемый файл ссылаются так, что VS Code может найти его, пройдя по дереву входных файлов.Редактировать: команда 'reload window' (добавлена много лет назад) должна решить эту проблему раз и навсегда.
источник
xproj
иtsconfig
файлом я упустил тот факт, что папка с моими файлами сценариев была указана вexclude
разделеtsconfig
. Надеюсь, это кому-нибудь поможет.Я должен добавить следующее в файле settings.json vscode, чтобы удалить предупреждение.
"javascript.implicitProjectConfig.experimentalDecorators": true
VSCode -> Настройки -> Настройки
источник
ctrl + ,
Сочетание клавиш, чтобы открыть настройки пользователя. в настройках пользователя нажмите 3 точки (...
), затем во всплывающемOpen settings.json
settings.json
Эта ошибка также возникает, когда вы выбираете папку «src» для папки рабочей области.
Когда выбрана корневая папка, папка, в которой находятся «src», «node_modules», ошибка исчезает
источник
Файл -> Настройки -> Настройки
источник
внутри вашего проекта создайте файл tsconfig.json, затем добавьте следующие строки
источник
должен добавить
typescript.tsdk
в мой.vscode/settings.json
:источник
.vscode/settings.json
соответствии с этим.vscode
папки (я не знаю почему - я бэкенд-разработчик, оставь меня в покое!), Поэтому я создал одну в корневой папке с указаннымsettings.json
файлом.В VSCode, перейдите в File => Preferences => Settings (или Control + запятая), и он откроет файл настроек пользователя. Поиск "javascript.implicitProjectConfig.experimentalDecorators": true, а затем установите флажок для экспериментальных декораторов в файл, и он должен это исправить. Это для меня.
источник
В Visual Code Studio перейдите в «Файл» >> «Настройки» >> «Настройки», найдите «декоратор» в поле поиска и установите флажок, как на изображении.
источник
Откройте
settings.json
файл в следующем месте<project_folder>/.vscode/settings.json
или вы можете открыть файл из меню, как указано ниже
VSCode -> File -> Preferences -> Workspace Settings
Затем добавьте следующие строки в
settings.json
файлВот и все. Вы не увидите никаких предупреждений / ошибок в отношении « Экспериментальных Декораторов»
источник
Этот ответ предназначен для людей, которые используют проект Javascript, а не проект Typescript . Вместо файла tsconfig.json вы можете использовать файл jsconfig.json .
В конкретном случае предупреждения декораторов вы хотите написать внутри файла:
После того, как было задано ошибочное поведение, всегда лучше указать «include» в файле конфигурации и перезапустить редактор. Например
источник
Решит эту проблему.
источник
settings.json
(пользователь или рабочая область). Вы также можете использовать настройкиДобавьте следующие строки в tsconfig.json и перезапустите VS Code.
источник
Не для того, чтобы понять смысл, но обязательно добавить следующее к
под Файл >> Настройки >> Настройки
"javascript.implicitProjectConfig.experimentalDecorators": правда
это решило проблему для меня, и я попробовал довольно много предложений, которые я нашел здесь и в других местах.
источник
У меня была эта проблема недавно в Visual Studio 2017 - оказалось, что она была вызвана «функцией» VS - игнорированием tsconfig.json, когда для действия Build не установлено Content .
Таким образом, изменение действия Build на Content и перезагрузка решения решили проблему.
источник
Ради ясности и глупости.
1) Откройте .vscode / settings.json.
2) Добавьте на него «typescript.tsdk»: «node_modules / typescript / lib».
3) Сохраните это.
4) Перезапустите код Visual Studio.
источник
Если вы работаете в Visual Studio. Вы можете попробовать это исправить
Добавьте TypeScriptExperimentalDecorators в этот раздел, как показано на рисунке
увидеть более подробную информацию в этом месте.
источник
Если вы используете cli для компиляции файлов * .ts, вы можете установить Экспериментальные Декораторы, используя следующую команду:
источник
Пожалуйста, проверьте, что вы указали в вашем VS Code папку всего проекта, а не только папку src, потому что если вы откроете только src, то файл ts.config.json (расположенный в папке проекта) не будет находиться в области видимости, и VS не распознает параметры экспериментальных декораторов.
В моем случае это исправило все проблемы, связанные с этой проблемой.
источник
src
иnode_modules
вместо «просто»src
.источник
Откройте папку всего проекта вместо имя-проекта / src
источник
Я исправил предупреждение, удалив "baseUrl": "" из файла tsconfig.json
источник
Вы можете столкнуться с этой проблемой, если откроете файл TS, который существует за пределами проекта. Например, я использую lerna, и у меня был файл, открытый из другого пакета. Хотя этот другой пакет имел собственный tsconfig с экспериментальными декораторами, VsCode не соблюдает его.
источник
Я столкнулся с той же проблемой при создании Injectable Services в Angular 2. У меня все есть в tsconfig.json. До сих пор я получал эту ошибку в строке ColorsImmutable.
источник
Если вы используете Deno JavaScript и TypeScript runtime и включаете экспериментальные декораторы: true в tsconfig.json или в настройках VSCode ide. Он не будет работать. Согласно требованию Deno, вы должны предоставить tsconfig в качестве флага при запуске файла Deno. Смотрите пользовательские параметры компилятора TypeScript
В моем конкретном случае я проводил тест Deno и использовал.
Если это файл, у вас есть что-то вроде
мой tsconfig.json
источник
Я добавил эту опцию в tsconfig.json,
"baseUrl": "front-end"
Замените интерфейс на имя вашего проекта angular-cli.источник
Вы также можете попробовать с
ng build
. Я только что перестроил приложение и теперь оно не соответствует.источник
Оказывается, вы можете обойти это, сопоставив имя вашего модуля с именем файла. Если у вас есть имя модуля BankSpecialtyModule, тогда имя файла должно быть. банк-specialty.module.ts
источник
Я столкнулся с этой ошибкой, когда создал новый модуль и переместил мои файлы * .module.ts и * -routing.module.ts в другую папку. После того, как я удалил два файла и создал модуль в новой папке, он работает отлично. Среда Angular версии 9 и Angular CLI версии 9.1.0
источник
Для меня эта ошибка «Экспериментальная поддержка декораторов - это функция, которая может быть изменена в будущем выпуске (и т. Д.)» Возникала только в VS Code в Angular-проекте и только при создании новой службы.
Приведенное выше решение: «В Visual Code Studio перейдите в« Файл »>« Настройки »>>« Настройки »,« Поиск »« Декоратор »в поле поиска и установите флажок« JavaScript »>« Неявная конфигурация проекта: экспериментальные декораторы ».
Кроме того, остановка ng serve в окне терминала и перезапуск заставили ошибку исчезнуть после перекомпиляции.
источник