如何解决如何在 TypeScript 中创建动态类? ? 开发过程中如何在TypeScript中创建动态类? 如何解决问题? 下面主要结合日常开发的经验给大家介绍一下如何在TypeScript中创建动态类? 解决方案建议,希望能够为您解决如何在TypeScript中创建动态类?启发或者帮助; 问题描述
我正在尝试将项目从 JavaScript 迁移到 TypeScript。 我正在尝试使用以下代码。
// CustomError.ts
class ErrorType {
defaultMessage: string;
errorName: string;
constructor(defaultMessage: string,errorName: string) {
this.defaultMessage = defaultMessage;
this.errorName = errorName;
}
errorConstructor() {
const {defaultMessage,errorName} = this;
class CustomError extends Error {
name: string;
message: string;
constructor(message: string) {
super();
this.name = errorName;
this.message = message || defaultMessage;
return this;
}
}
return CustomError;
}
}
export = {
"InvalidThing": new ErrorType("Invalid Thing","InvalidThing").errorConstructor()
};
// ---------------------------------------------------------------------------------------------------
// main.ts
// import CustomError from "./CustomError";
// const main = () => throw new CustomError.InvalidThing("Thing A is invalid.");
// main();
// other.js
// const CustomError = require("./CustomError");
// const main = () => throw new CustomError.InvalidThing("Thing A is invalid.");
// main();
问题是我收到以下错误。
该模块的默认导入具有或正在使用私有名称“CustomError”。 (4082)
我需要以某种方式将 CustomError 置于更高的范围内。 问题是我需要访问 errorName 和 defaultMessage。
我还知道我可以为每种错误类型创建一个 CustomError 类。 在我的实际代码中,大约有 8 种类型的错误。 这意味着大量的重复代码。 我想让它保持干燥typescript动态模型,而不是重复一堆代码。
我怎样才能在 TypeScript 中做到这一点而不出现错误?
您还可以查看导致的错误。
还是没有找到解决办法
目前还没有找到有效的方法来解决这个程序问题,小编正在努力寻找和整理!
如果您已经找到了好的解决方案,欢迎通过此链接将解决方案发送给小编。
编辑邮箱:dio#foxmail.com(将#改为@)
喜欢与他人分享编程技术和工作经验typescript动态模型,欢迎加入后端之家官方交流群!
Coding House官方组1(已满)
Coding Home 官方组 2(完整)
Coding House官方3组(已满)
编码之家官方 4 组
Coding Home 官方 5 组(新)
发表评论