Issue
I am new in Typescript programming. Now I am in learning phase. I have face a problem during coding through receiving an error in back end console. The above mentioned code is:
function employee(id:number,name:string) {
this.id = id
this.name = name
}
var emp = new employee(123,"Smith")
employee.prototype.email = "smith@abc.com"
console.log("Employee 's Id: "+emp.id)
console.log("Employee's name: "+emp.name)
console.log("Employee's Email ID: "+emp.email)
Output @ Browser console is:
www.ts:10 Employee 's Id: 123
www.ts:11 Employee's name: Smith
www.ts:12 Employee's Email ID: smith@abc.com
And the error in Node console is:
[0] www/www.ts(6,15): error TS7009: 'new' expression, whose target lacks
a construct signature, implicitly has an 'any' type.
Please help me to resolve this error. Thanks....
Solution
In TypeScript you should use new
only on classes. Consider rewriting it like so:
class Employee {
id: number;
name: string;
email: string;
constructor(id:number, name:string) {
this.id = id;
this.name = name;
}
}
let emp = new Employee(123,"Smith");
emp.email = "smith@abc.com";
I don't understand what you were trying to achieve with the prototype property assignment.
Answered By - Dan Homola
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.