2016-10-10 22 views
7

Próbuję dodać maszynopis do istniejącego projektu .NET MVC. Dostaję jednak dziwne komunikaty o błędach, kiedy próbuję budować. Intellisense działa i widzę, że działa spis. Mogę również zobaczyć, że pliki .js są generowane przy zapisie ręcznym, co oznacza, że ​​działa funkcja compileOnSave. Dopiero gdy próbuję zbudować cały projekt, pojawiają się błędy.Visual Studio 2015 - Opis maszynowy "Kompilacja: Nie można znaleźć modułu ..."

enter image description here

używam następujące ustawienia w Visual Studio 2015:

  • Czy zainstalowany maszynopis 2.0.3

  • dodawali następujący devDependencies w moim package.json akt

enter image description here

  • Moja tsconfig plik wygląda tak

enter image description here

  • ten sposób zaimportować zależności określone w package.json akt.

enter image description here

Odpowiedz

0

Czy zainstalowany zależności KMP? Jeśli nie, to należy uruchomić komendę npm install na folderze projektu ręcznie, lub tego uniknąć w przyszłości, można automatycznie zainstalować pakiety NPM do projektu na budowie poprzez edycję pliku .njsproj po linii

<Import Project="$(VSToolsPath)\Node.js Tools\Microsoft.NodejsTools.targets" /> 

doda? następujących sekcji:

<PropertyGroup> 
    <PreBuildEvent> 
     npm install --msvs_version=2015 
    </PreBuildEvent> 
</PropertyGroup> 

Lub jeśli tylko chcesz to na odbudowę, a następnie:

<PropertyGroup> 
    <BeforeRebuildEvent> 
     npm install --msvs_version=2015 
    </BeforeRebuildEvent> 
</PropertyGroup> 

--msvs_version=2015 Opcja wiersza poleceń nie jest obowiązkowa, ale jeśli używasz wielu wersji VS lub Twój NPM nie jest poprawnie skonfigurowany, może być przydatny.

+0

Zależności są zainstalowane poprawnie. Widzę je w folderze "node_module". A więc niestety tak nie jest. – Victor

+0

Następnie możesz spróbować ustawić plik 'tsconfig.json'; [Dokumentacja] (https://www.typescriptlang.org/docs/handbook/tsconfig-json.html) na temat konfiguracji. – ther

+0

Jak widać na wstępnym pytaniu, już skonfigurowałem tsconfig.json, a moją referencją była Dokumentacja. – Victor

0

miałem aplikację, która wykazała, że ​​„nie może odnaleźć modułu” wiadomość w edytorze podczas przeglądania w Visual Studio 2015 [TypeScript 2.0.6] - ale działała idealnie w VSCode!

Wypróbowałem wszystkie zalecane zmiany znalezione w StackOverflow i na innych stronach, ale żadna z nich nie działała dla mnie. Zmianą, która naprawiła mój problem, było usunięcie właściwości 'outDir' z pliku tsconfig! Wiem, że kod w pierwotnym pytaniu nie korzysta z właściwości outDir, ale ta odpowiedź może pomóc komuś innemu.

Ta zmiana była również konieczna w przypadku VS2017. Moja sugestia: użyj VSCode, jeśli to możliwe! :)

+0

Wygląda na to, że nie udało mi się tego naprawić. Jakieś inne sugestie? – crush

0

Miałem ten sam problem i naprawiłem instalując npm.

npm install

0

Używam RequireJS i trzeba zmienić system modułowy z CommonJS AMD. W programie Visual Studio:

  • Right Click projektu w Solution Explorer "Właściwości"
  • maszynopis budowy (zakładka po lewej)
  • Zmiana wyboru w systemie moduł
+0

OP używa pliku tsconfig.json. Strona właściwości projektu Visual Studio blokuje tę opcję na karcie Kompilacja czcionek w takich przypadkach, więc nie można jej zmienić w trakcie opisywania. (moja wersja to VS 2017 v15.4.5; nie wiem, kiedy ta praktyka się zaczęła.) – shahzbot

0

miałem ten sam problem z audiowizualny Studio 2017. Rozwiązany problem z instalacją kątową-cli. Mam nadzieję, że może pomóc :)

Powiązane problemy