gpt4 book ai didi

typescript - 向字符串或数字添加方法的ionic2 typescript 编译错误

转载 作者:行者123 更新时间:2023-12-02 11:01:34 26 4
gpt4 key购买 nike

在我的Ionic2项目中,我尝试向Number中添加一个新方法,如以下代码所示。

interface StringConstructor {
bar(msg: string): void;
}

String.bar = function(msg: string) {
alert("Example of static extension: " + msg);
}

String.bar("Hello World");


interface NumberConstructor {
toRad(): number;
}

Number.toRad = function() { return this * (Math.PI / 180); };

export function gpsDist() {

}
当我进行 ionic 生成时,它给了我以下错误:

TypeScript error:/Users/cju/Projects/Bus2-App/app/util/mathUtil.ts(7,8): Error TS2339:Property 'bar' does not exist on type 'StringConstructor'.

TypeScript error: /Users/cju/Projects/Bus2-App/app/util/mathUtil.ts(11,8): ErrorTS2339: Property 'bar' does not exist on type 'StringConstructor'.

TypeScript error:/Users/cju/Projects/Bus2-App/app/util/mathUtil.ts(18,8): Error TS2339:Property 'toRad' does not exist on type 'NumberConstructor'.


但是同一文件可以在 ionic 外部编译。如果使用tsc进行编译,则不会出错。所有代码都在一个文件中。

最佳答案

Angular负责ts编译,您可以在应用程序根目录中的tsconfig.json文件中编辑Typescript编译器选项。但是我不希望您对此感到困惑。

尝试使用非静态方法扩展可以在此处找到的功能:https://stackoverflow.com/a/13897813/1016128

关于typescript - 向字符串或数字添加方法的ionic2 typescript 编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37294937/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com