【发布时间】:2014-04-10 08:55:15
【问题描述】:
我一直在玩咖啡脚本,我想使用 Kinetic.js 来执行一些图形操作。
我真的很喜欢 coffeescripts 类,所以我想用它们来创建自定义精灵。
以下是我扩展 Kinetic.Circle 的尝试:
class Particle extends Kinetic.Circle
constructor: (x,y,size,color) ->
Kinetic.Circle.class @, {
x: x
y: y
width: size
height: size
fill: color
}
请注意,我没有按照this 问题中的建议在构造函数中使用“super”。
调用构造函数时抛出以下错误:
Uncaught TypeError: Object function (a){this.___init(a)} has no method 'class'
...在生成的javascript中:
Particle = (function(_super) {
__extends(Particle, _super);
function Particle(x, y, size, color) {
Kinetic.Circle["class"](this, {
x: x,
y: y,
width: size,
height: size,
fill: color
});
}
return Particle;
})(Kinetic.Circle);
是否可以在不使用太多暴力的情况下以咖啡脚本风格扩展 Kinetic 形状?
【问题讨论】:
-
Kinetic.Circle没有静态的.class()方法,你从哪里得到的?看起来应该是Kinetic.Circle.call。 -
我从链接的问题中得到它,尝试了你的建议,它奏效了!将其添加为答案,我会接受:)
标签: javascript coffeescript kineticjs