5

I am trying to create an Angular 2 application using Typescript in Visual Studio 2015. I have installed npm on my machine. When I compile my application , I am getting errors cannot find module '@angular/core'. It is referred in all the ts files under the node_modules folder in the import statement. For e.g.

import { ElementRef, AfterViewInit, OnDestroy, DoCheck, EventEmitter, IterableDiffers } from '@angular/core';

I am currently getting around 500 plus errors. The error goes off when I replace it with 'angular2/core '. Also just to let you know , I am using PrimeNG UI Components in my project as well.

Could somebody help ? I don't understand why it is looking at @angular/core ?

QoP
  • 24,748
  • 16
  • 67
  • 72
Tom
  • 7,225
  • 31
  • 107
  • 226

4 Answers4

5
  1. Install nodejs
  2. Open cmd prompt and type 'cd your project directory'
  3. Type 'npm install' and hit enter.

This will create a node_modules folder within that directory which should have the @angular/core that's required.

User123
  • 489
  • 8
  • 21
2

The angular2 name in modules names is for versions before RC (release candidate) versions (beta ones) and the @angular one for RC versions.

Thierry Templier
  • 191,422
  • 38
  • 386
  • 349
2

You first need to add typings at global level as below.

npm install -g typings

Then create typings.json using below command.

typings init

Paste below code in typings.json

{
  "name": "ng2-application",
  "globalDependencies": {
    "core-js": "registry:dt/core-js#0.0.0+20160725163759",
    "jasmine": "registry:dt/jasmine#2.2.0+20160621224255",
    "node": "registry:dt/node#6.0.0+20160909174046"
  }
}

Now you need to add below code in tsconfig.json

 "compilerOptions": {
        "moduleResolution": "node"
       }

After doing above steps you will able to get definitions on F12.

Hardik Patel
  • 3,616
  • 1
  • 23
  • 35
0

When I had this issue, it would come and go depending on the module kind I had selected. (Visual Studio, right-click project, properties, Typescript tab. It would occur for the "System" Module System, which is used in Angular2 QuickStart tutorial, but not for some others, for example.)

I verified the folder /node_modules/@angular/core/ existed in the proj and was populated.

Solution was to edit the .csproj file and add the line <TypeScriptModuleResolution>Node</TypeScriptModuleResolution> in both Debug and Release sections. VS defaults to Classic for this setting for some settings of ModuleKind.

Ron Newcomb
  • 2,514
  • 18
  • 23