Import TypeScript替换<;参考路径/>;进口的

Import TypeScript替换<;参考路径/>;进口的,import,typescript,ecmascript-6,Import,Typescript,Ecmascript 6,我试图编写一些TypeScript应用程序,结果得出结论,我不喜欢语句。我发现使用导入“某物”更合适 但当我试图替换我的引用路径时,我不断得到一个错误,即模块未知 以下是我的文件夹结构: /app /ViewModels ApplicationViewModel.ts app.ts ApplicationViewModel.ts module ApplicationVM { export class ApplicationViewModel {

我试图编写一些TypeScript应用程序,结果得出结论,我不喜欢
语句。我发现使用
导入“某物”
更合适

但当我试图替换我的引用路径时,我不断得到一个错误,即模块未知

以下是我的文件夹结构:

/app
    /ViewModels
        ApplicationViewModel.ts
    app.ts
ApplicationViewModel.ts

module ApplicationVM {
    export class ApplicationViewModel {
        constructor(public test:string) {
        }
    }
}
module ApplicationVM {
    export class ApplicationViewModel {
        constructor(public test:string) {
        }
    }
}

export = ApplicationVM;
app.ts

/// <reference path="ViewModels/ApplicationViewModel.ts" />

var a = new ApplicationVM.ApplicationViewModel('test');
import { ApplicationViewModel } from "./ViewModels/ApplicationViewModel"
var a = new ApplicationViewModel('test');

对于“noidea”,我尝试了:“ViewModels/ApplicationViewModel”、“ApplicationVM”asl。我甚至将它与
结合使用,但也没有帮助。

从ApplicationViewModel.ts中删除模块声明(如果使用外部模块,则每个文件都已经是一个模块):

然后在你的app.ts中

import * as App from './ViewModels/ApplicationViewModel';
var a = new App.ApplicationViewModel('test');
您需要使用所谓的:

ApplicationViewModel.ts

module ApplicationVM {
    export class ApplicationViewModel {
        constructor(public test:string) {
        }
    }
}
module ApplicationVM {
    export class ApplicationViewModel {
        constructor(public test:string) {
        }
    }
}

export = ApplicationVM;
app.ts

/// <reference path="ViewModels/ApplicationViewModel.ts" />

var a = new ApplicationVM.ApplicationViewModel('test');
import { ApplicationViewModel } from "./ViewModels/ApplicationViewModel"
var a = new ApplicationViewModel('test');

非常感谢,成功了。错过了小径上的那个点,感觉很尴尬。不客气。请注意,您也不需要使用“module”和“export=”用法。是的,因为您的代码使它工作了,所以我已经尝试了一些东西=)