2016-06-14 9 views
0

Visual Studio 2015とasp.netコアプロジェクトを使用し、typescriptでangular2(rc1)を使用します。ビジュアルスタジオはangle2とtypescriptを@angularパスでコンパイルする方法

Angular2に大きな問題があり、新しいパス@ Angular/Coreなどがあります。

typescriptコンパイラでは@ angularディレクティブを見つけることができないという問題があります。私はこれを解決する方法を見つけることができません。ですから、どのようにしてビジュアルスタジオのコンパイラに角度ファイルを探すべきかを理解させるにはどうしたらいいですか?それともできないのですか?

import {ROUTER_PROVIDERS} from '@angular/router'; // this gives error 
import {HTTP_PROVIDERS} from '@angular/http'; 

import { AppComponent } from './app.component'; // this works 


bootstrap(AppComponent, [ROUTER_PROVIDERS, HTTP_PROVIDERS]); 

エラーメッセージは次のとおりです。 エラーTS2307ビルド: '角度/ルータ@' モジュールを見つけることができません。

これらのコンパイルエラーでもアプリケーションは動作しています。スクリプトファイルはnpmcdn.comリポジトリに含まれているためです。

答えて

1

などのファイルディレクトリ./を持っていないことで、それがnode_modulesフォルダを見てデフォルトです。

これらが他の場所にある場合は、その場所を指す必要があります。

import {ROUTER_PROVIDERS} from '../somewhere-else/@angular/router'; 

あなたは(私は非常にやってに対してを助言する)CDNを使用しようとしている場合、あなたはまだSystemJSまたはWebPACKのがグローバルwindowの上に置かれ、あなたの角度のパッケージについて知らせる必要があります。

Aは一例をWebPACKの:

// webpack.config.js 
module.exports = { 
    externals: { 
    '@angular/router': 'angular.router' // This right side might be different 
    } 
}; 

私はnpmを使用してnode_modules内のあなたのneccessaryファイルを含むお勧めします。このようにして、ライブラリの特定の部分をインポートするなどの作業を行っているときは、のしか取得できません。 CDNにはライブラリ全体が含まれており、グローバルウィンドウの名前空間を汚染してしまいます(ちょうど悪いjoo-jooです)

+0

私はnpmを使用していますが、これらの問題を引き続き抱えています。 ...経路は、dosentは多分何かが私のセットアップで間違っています。 CDNが使用されているか、htmlページだけですので、ファイルをホストする必要はありません。 – Thorarins