我使用Haxe定位Javascript。
我有一个包(定义为extern),“phaser
”,其中包含Math
类以及许多其他类。我在我的文件的开头使用import phaser.*;
,因为我使用了这个包中的许多类,我不想用phaser.
为它们添加前缀。
我想使用the Math class from Haxe API,但如果我尝试使用它(例如Math.random()
),编译器认为我想使用phaser.Math
并告诉我它中没有这样的功能。
我可以明确地写出我想使用Haxe Math
类而不是phaser.Math
吗?
我试过haxe.Math
但没有运气......
提前致谢
尝试
import Math as HaxeMath;
然后使用HaxeMath.*
而不是Math.*
注意,没有什么特别的名字HaxeMath
,你可以做
import Math as Freddy;
然后使用Freddy.*
而不是Math.*
。 :p
解决它的两种方法:
std.Math
。例如std.Math.floor(1.1);
,或typedef HxMath = std.Math;
,或import Math as HxMath;
之前添加import phaser.*;
。如果您使用的是早于3.2的haxe版本,请使用in
而不是as
,即import Math in HxMath;
。