我已经关注了入门应用:'在5分钟内学习'来自https://angular.io/。我想开始尝试使用' new'路由器,但当我做:
import {...} from 'angular2/router';
我得到了:
error TS2307: Cannot find external module 'angular2/router'.
我可以以类似于angular2的安装方式添加此依赖项。即,类似于:
tsd query angular2 --action install
答案 0 :(得分:1)
tsd install
只会添加TypeScript使用的类型定义文件。
我不相信5分钟的演示已设置好使用路由器。如果您需要快速修复,请添加指向路由器代码<script src="https://code.angularjs.org/2.0.0-alpha.28/router.dev.js"></script>
的链接,其中包含匹配的版本号。
也许更好的选择是在那里使用one of the many angular 2 boilerplates。在接近设置学习曲线时没有多大意义,因为在Angular离开alpha后它将大大简化。
答案 1 :(得分:1)
您收到此错误,因为您的tsd.d.ts
文件中的angular2 /路由器模块不是defiend。你可以通过这些方法摆脱这个错误。
1安装打字的命令,并在tsd.d.ts文件中添加为你的参考。
tsd install angular2/router --save
或者您可以添加链接到路由器代码
&LT; script src="https://code.angularjs.org/2.0.0-alpha.37/router.dev.js"></script>
我希望通过以下方式解决您的问题。
答案 2 :(得分:0)
您需要角度路由器定义。我使用ng2.d.ts解决了问题 来自angular2-webpack-starter
答案 3 :(得分:0)
从Angular 2.0 alpha 30开始,使用路由器更容易 以下是如何使用它的示例:http://www.syntaxsuccess.com/viewarticle/routing-in-angular-2.0
答案 4 :(得分:0)
路由器包含在自己独立的包中
tsd install angular2/router --save
导入使用:
import {
ROUTER_DIRECTIVES,
ROUTER_PROVIDERS,
RouteConfig,
} from 'angular2/router';
ROUTER_DIRECTIVES
已添加到您的@View.directives
媒体资源中。它包括RouterLink
和RouterOutlet
类。
RouteConfig
需要在您的组件中添加@RouteConfig
装饰器。
ROUTER_PROVIDERS
。它包括RouteConfig(即您定义的路线)并将PathLocationStrategy
设置为您的默认LocationStrategy
。
实施例
bootstrap(App, [
ROUTER_PROVIDERS,
]);