我正在尝试使用Typescript和jspm来创建一个有角度的应用程序。问题是当你想确保加载.js
文件时,在jspm中你必须编写一个导入,它确保在运行你的代码之前加载文件。但是Typescript删除了我的导入。这是我编写的Typescript代码。我必须加载angular-new-router
然后将其添加到我的模块依赖项。
import angular = require('angular');
import MainController = require('./controllers/MainController');
import NgNewRoute = require('angular-new-router');
console.log(angular.version);
var appModule = angular.module('app', ['ngNewRouter']);
MainController.register(appModule);
export = appModule;
我的问题:如何指示Typescript不删除我的import语句,或者我必须做其他事情以确保我的路由器加载?
PS:我使用commonjs将我的打字稿代码编译为ES5。
编辑:此问题与TypeScript: import module with only statements不同。我在使用第三方库时遇到此问题,因此我不想更改它们。我也在使用commonjs模式,因此amd-dependency
无法解决我的问题!
编辑2:另一个问题是我的Typescript代码中不能要求js模块以外的文件。
答案 0 :(得分:3)
如何指示Typescript不删除我的import语句,或者我必须做其他事情以确保我的路由器加载
您需要使用import
中的某些内容作为变量,例如
import foo = require('./foo');
var bar = foo; // Like this
而不只是:
import foo = require('./foo');
var bar:foo; // This will not cause an import in the generated JavaScript