我正在尝试在我的角度应用程序的一部分中使用typescript。 我有一个描述用户类的ts文件:
module App.Tools {
export class User {
name: string;
constructor(name: string) {
this.name = name;
}
}
}
在我的JS文件(es2015)中,我尝试导入类User:
import {User} from 'User.ts';
export default class AuthFactory {
/**
* @param {[type]}
* @return {[type]}
*/
constructor($firebaseAuth) {
this.ref = new Firebase("...");
// create an instance of the authentication service
this.auth = $firebaseAuth(this.ref);
var authData = this.auth.$getAuth();
if (authData) {
this.currentUser = new User(authData.google.displayName, authData.provider);
} else {
this.currentUser = null;
}
}
}
这不起作用,因为我收到错误:“用户未定义”。
我正在使用浏览器,tsify和babel。
答案 0 :(得分:1)
我认为您需要在“User.ts”文件中添加“external”打字稿模块:
class User {
name: string;
constructor(name: string) {
this.name = name;
}
}
export = User;
使用内部模块:
module App.Tools {
export class User {
name: string;
constructor(name: string) {
this.name = name;
}
}
}
export = App.Tools;
要在导入中使用此功能:
import { User } from 'User.ts';