Nan*_*dke 8 javascript typescript
创建一个Angular2应用程序时,我在第一个类的构造函数中调用另一个类的构造函数时遇到以下问题.
头等舱代码
import SecondClass from './second-class'
export class FirstClass {
someVar:string;
secondClass:SecondClass;
constructor(firstClass?: FirstClass) {
someVar='test';
secondClass= new SecondClass;
}
}
Run Code Online (Sandbox Code Playgroud)
二等代码:
export class SecondClass {
someOtherVar:string;
constructor(secondClass?:SecondClass) {
someOtherVar='test';
}
}
Run Code Online (Sandbox Code Playgroud)
会给我错误:ORIGINAL EXCEPTION:TypeError:second_class_1.default不是构造函数
内容为./second-class
System.register([], function(exports_1, context_1) {
"use strict";
var __moduleName = context_1 && context_1.id;
var SecondClass;
return {
setters:[],
execute: function() {
SecondClass = (function () {
function SecondClass(secondClass) {
this.someOtherVar='test';
}
return SecondClass;
}());
exports_1("SecondClass", SecondClass);
}
}
});
//# sourceMappingURL=second-class.js.map
Run Code Online (Sandbox Code Playgroud)
这是Typescript编译器的编译输出
dfs*_*fsq 15
错误消息表示您使用了命名export(export class SecondClass {})./second-class(不是默认值).所以这意味着你的导入看起来应该是这样的
import {SecondClass} from './second-class'
Run Code Online (Sandbox Code Playgroud)
代码中有一些错误:
{}进口失踪
缺少()调用构造函数
缺少this访问类成员
头等舱代码
import {SecondClass} from './second-class'
export class FirstClass {
someVar:string;
secondClass:SecondClass;
constructor(firstClass?: FirstClass) {
this.someVar='test';
this.secondClass= new SecondClass();
}
}
Run Code Online (Sandbox Code Playgroud)
二级代码:
export class SecondClass {
someOtherVar:string;
constructor(secondClass?:SecondClass) {
this.someOtherVar='test';
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11704 次 |
| 最近记录: |