0
いくつかのクラスをメインクラスにインポートしようとしていますが、エラーが発生します。 Uncaught SyntaxError:行の予期しないトークンのインポートimport ApiDto = Model.DtoModel.ApiDto;クラスモジュールを別のクラスにインポートする
二つのファイル間で同じモジュール名を共有する2つのDTOモデルがあります。
export module DtoModel {
export class ApiDto {
}
export class ApiDtoItem {
public method: string;
public object: any;
}
}
export module DtoModel {
export class User {
public userNo: number;
}
}
これはプロジェクトの構造です。ここで
Main.ts
/// <reference path="jquery.d.ts" />
import * as Model from "../DtoModels/./ApiDto";
// breaks on next line!
import ApiDto = Model.DtoModel.ApiDto;
export class Main {
private Url: string;
constructor() {
var apidto = new ApiDto();
this.Url = "http://localhost:80/api/main";
var response = jQuery.post(this.Url, (data: ApiDto, textStatus: string, jqXHR: JQueryXHR) => {
apidto = data;
});
console.log(response);
}
}
var main: Main = new Main();
は私のコンパイルオプションは次のとおりです。
{
"compilerOptions": {
"target": "es6",
"noImplicitAny": true,
"noEmitOnError": false,
"sourceMap": true,
"inlineSources": true
},
"compileOnSave": true
}
私はChome 54またはFirefox 49がES6 – wonea
をサポートしていると思っていましたが、ほとんどのES6機能がサポートされています。しかし、ブラウザはモジュールを読み込むことができません。そのため、現時点では、インポート/エクスポートがネイティブに実装されていません。 Webpack、Browserify、Rollupなどのバンドルを使用するか、SystemJSのようなモジュールローダーを試してください – lena
ES6モジュールローダー標準が開発中です。https://whatwg.github.io/loader/ – lena