我正尝试将DefinitelyType的最新Angular和Angular-Route使用Typescript定义用于Angular 1.7.8。
相对于2,我更喜欢Angular 1。
我正在尝试在Visual Studio 2019中设置TypeScript,而没有任何模块加载程序或程序包管理器等。我只是将.d.ts文件添加到/ scripts / typings中。
我有2个文件,app.module.ts和app.route.ts。 app.module.ts没有错误,并生成一个js文件。
我的app.route.ts文件如下:
/// <reference path="typings/angular/angular.d.ts" />
/// <reference path="typings/angular/angular-route.d.ts" />
module MyApplication
{
"use strict";
function routes($routeProvider: ng.route.IRouteProvider)
{
$routeProvider
.when("/home", {
templateUrl: "/scripts/app/home/home.html"
})
.otherwise({
redirectTo: "/home"
});
}
routes.$inject = ["$routeProvider"]
angular
.module("MyApplication")
.config(routes);
}
但是我看到此错误,没有生成app.route.js文件:
Namespace 'angular' has no exported member 'route'.
因为我没有使用模块加载器,所以必须在angular-route.d.ts中注释掉这一行:
import * as angular from 'angular';
所以我不确定这是否会破坏任何东西。
为什么ng.route无法解析并给出错误?
如果我的app.route.ts文件实际上是使用TypeScript而不是常规Java语言实现的(我知道js = ts,但也许使用ts可以/应该是不同的),则也不会介意评论。
感谢您的帮助。
答案 0 :(得分:0)
我想,当您删除路线定义中的angular导入时,我想没有将路线定义放入的angular。
我不确定您描述的设置是否可行。即使是这样,您也肯定会发现很多类似的问题。使用Angular 1和Typescript设置简单的Webpack环境会容易得多。