我无法在MyError
类上运行任何方法。
class MyError extends Error {
constructor(message) {
super()
this.name = 'MyError'
this.message = message
this.stack = (new Error(message)).stack
return this
}
doSomething () {
return this.message + " dolphin"
}
}
let myError = new MyError('Invalid Form.')
console.log(myError.doSomething())
由于某种原因,这给了我一个错误:
console.log(myError.doSomething());
^
TypeError: myError.doSomething is not a function
最佳答案
发现您无法扩展错误。
有一个带有错误的 es6-error
包,您可以扩展。
import ExtendableError from 'es6-error';
class MyError extends ExtendableError {
constructor(message) {
super()
this.name = 'MyError'
this.message = message
this.stack = (new Error(message)).stack
return this
}
doSomething () {
return this.message + " dolphin"
}
}
let myError = new MyError('Invalid Form.')
console.log(myError.doSomething())