Не может найти модуль 'angular2/core'
![enter image description here]()
Эти красные волнистые линии говорят, что cannot find module 'angular2/core'
, cannot find module 'angular2/router'
, cannot find module 'angular2/http'
. Я проверил другие сообщения в SO, но, кажется, у них нет соответствующего ответа.
Я также добавил ссылку на файлы d.ts
как показано ниже, но все еще не работает. ![enter image description here]()
В других tsconfig.json
говорится, что мне нужно что-то настроить в файле tsconfig.json
но я использую Visual Studio и не вижу необходимости использовать tscompiler, предложенный командой angular, потому что Visual Studio должна автоматически компилировать ts файлы.
Я что-то пропустил?
tsconfig.json
ли tsconfig.json
даже если вы используете Visual Studio?
Как мне избавиться от этих волнистых линий?
Спасибо!
(Я использую Visual Studio 2015 и последний движок Typescript)
ОБНОВЛЕНИЕ: я не уверен, что именно менеджер пакетов npm. Но у меня есть package.json
файл package.json
который был создан при создании проекта. Я использую этот файл для установки пакетов npm. ![enter image description here]()
Ответы
Ответ 1
Для приложений ASP.NET 5.0 в VS 2015 настройка typescript немного сложна.
Пока инструмент вокруг typescript не улучшится, вы можете настроить typescript вручную:
Step 1: Right-click project, and Unload Project
Step 2: Right-click the unloaded project, and Edit the .xproj file
Step 3: Add a PropertyGroup node, under the Project node:
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptJSXEmit>None</TypeScriptJSXEmit>
<TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
<TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
<TypeScriptModuleKind>CommonJS</TypeScriptModuleKind>
<TypeScriptRemoveComments>False</TypeScriptRemoveComments>
<TypeScriptOutFile />
<TypeScriptOutDir />
<TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
<TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
<TypeScriptSourceMap>True</TypeScriptSourceMap>
<TypeScriptMapRoot />
<TypeScriptSourceRoot />
<TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
</PropertyGroup>
Step 4: Right-click the unloaded project and Reload Project
Step 5: Re-build project
Если вы все еще сталкиваетесь с ошибкой, когда он не может найти модуль, выйдите из visual studio и перезагрузите решение.
Ответ 2
Вот мои рабочие настройки:
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptJSXEmit>None</TypeScriptJSXEmit>
<TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
<TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
<TypeScriptModuleKind>System</TypeScriptModuleKind>
<TypeScriptRemoveComments>False</TypeScriptRemoveComments>
<TypeScriptOutFile />
<TypeScriptModuleResolution>NodeJs</TypeScriptModuleResolution>
<TypeScriptOutDir />
<TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
<TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
<TypeScriptSourceMap>True</TypeScriptSourceMap>
<TypeScriptMapRoot />
<TypeScriptSourceRoot />
<TypeScriptEmitDecoratorMetadata>True</TypeScriptEmitDecoratorMetadata>
<TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
</PropertyGroup>
Перезагрузите Visual Studio после применения этого в своем веб-проекте.
Ответ 3
Для VS2015 перейдите в Инструменты → Параметры → Текстовый редактор → TypeScript → Проект → Общие, затем отметьте "Автоматически компилировать файлы TypeScript, которые не являются частью проекта", затем выберите "Использовать код CommonJS генерация для модулей.."
Ответ 4
Вот как я исправил проблему в VS2015:
- Открыть окно свойств проекта
- Перейдите на вкладку TypeScript Build
- Выберите CommonJS как модульную систему, как показано на рисунке ниже
![введите описание изображения здесь]()
Ответ 5
Я тоже столкнулся с этой ошибкой, и у меня сработало: выгрузить проект и проверить файл .csproj. Я обнаружил, что этот фрагмент был добавлен туда -
<ItemGroup>
<None Remove="ClientApp\components\componentname\componentname.ts" />
</ItemGroup>
Удаление этого кода, сохранение csproj и перезагрузка проекта работали. Надеюсь это поможет!
Ответ 6
Самый простой способ установить это с помощью диспетчера пакетов npm, потому что angular2 поставляется с вводом текста. Ваш редактор узнает все местоположения импорта...
Ответ 7
This has to be done for both 'Debug' and 'Release' then only it works in VS 2013. Like below..
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptJSXEmit>None</TypeScriptJSXEmit>
<TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
<TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
<TypeScriptModuleKind>system</TypeScriptModuleKind>
<TypeScriptRemoveComments>False</TypeScriptRemoveComments>
<TypeScriptOutFile />
<TypeScriptModuleResolution>NodeJs</TypeScriptModuleResolution>
<TypeScriptOutDir />
<TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
<TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
<TypeScriptSourceMap>True</TypeScriptSourceMap>
<TypeScriptMapRoot />
<TypeScriptSourceRoot />
<TypeScriptEmitDecoratorMetadata>True</TypeScriptEmitDecoratorMetadata>
<TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<TypeScriptTarget>ES5</TypeScriptTarget>
<TypeScriptJSXEmit>
</TypeScriptJSXEmit>
<TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
<TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
<TypeScriptModuleKind>system</TypeScriptModuleKind>
<TypeScriptRemoveComments>False</TypeScriptRemoveComments>
<TypeScriptOutFile />
<TypeScriptModuleResolution>NodeJs</TypeScriptModuleResolution>
<TypeScriptOutDir />
<TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
<TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
<TypeScriptSourceMap>True</TypeScriptSourceMap>
<TypeScriptMapRoot />
<TypeScriptSourceRoot />
<TypeScriptEmitDecoratorMetadata>True</TypeScriptEmitDecoratorMetadata>
<TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
</PropertyGroup>
Ответ 8
У меня возникла проблема с установкой ionic 2 - i, которая установила все пакеты (update package.json) и обновила мою версию от npm до v3. Это разрешило это.
Ответ 9
Разработка с помощью шаблона ASP.NET Core Angular 2 для начинающих от Mads Kristensen. У меня была аналогичная проблема с запуском нового каталога с файлами Typescript.
Мое решение было более простым, чем изменение файла проекта. Я только что скопировал tsconfig.json из папки ClientApp, где все файлы Typescript были в моей новой папке.
Ответ 10
Просто щелкните правой кнопкой мыши на " package.json"
и выберите " Восстановить пакеты"
после установки пакетов его построить... ваша проблема решена.
Ответ 11
Это интересная проблема, помимо упомянутых выше причин и решений, можно получить эту ошибку в следующих сценариях.
-
NPM (Node Менеджер пакетов) не установлен на компьютере
Исправить: установить NPM из https://nodejs.org/en/
![Возможно, NPM не установлен или не настроен]()
-
Если вы все еще получаете эту ошибку после установки NPM, может возникнуть проблема с настройкой NPM. Обратитесь к этой статье для правильной настройки конфигурации NPM
Ответ 12
- В Visual Studio 2015 перейдите в меню "Инструменты" и нажмите "Параметры...". Ты будешь
видеть дерево с левой стороны открытого окна.
- Разверните "Проекты и решения", а затем выберите "Внешние веб-инструменты". Теперь перейдите
"$ (PATH)" над надписью "$ (DevEnvDir)".
- Нажмите "ОК". Перезапустите Visual Studio.
- Теперь щелкните правой кнопкой мыши файл "package.json" в проводнике решений и нажмите
в разделе "Восстановить пакеты".
Ответ 13
Привет, у меня такая же проблема, когда я использую редактор eclplse. Я выполнил команду ниже в моем окне cmd, и я перезапустил свое затмение. Он работает как ожидалось.
npm install --save @ angular/core @angular/compiler @angular/common @angular/platform-browser @angular/platform-browser-dynamic [email protected] beta.6 [email protected] @angular/forms
Ответ 14
- Попробуйте запустить команду npm install (установит отсутствующий lib в ваш проект)
- Откройте вашу папку/проект
Ответ 15
Щелкните правой кнопкой мыши на " package.json ", затем выберите "Установить пакеты", он откроет терминал и автоматически перейдет в нужную корневую папку и установит необходимые зависимости.
В package.json приведен список всех зависимостей, необходимых для запуска проекта.