我是新手,正在学习如何重构这个例子的CoffeeScript代码。由于两个函数都使用canvas和context,是否有一种方法可以将它们从函数中提取出来并共享,而不是重复自己?我相信这是我忽略的一个明显问题,但我一直无法让它正常工作。
CoffeeScript文件
@draw_rectangle = ->
canvas = document.getElementById("main_canvas")
context = canvas.getContext("2d")
context.fillRect(50, 25, 150, 100)
@draw_square = ->
canvas = document.getElementById("main_canvas")
context = canvas.getContext("2d")
context.fillRect(100, 50, 100, 50)
HTML正文:
<body>
<canvas id="main_canvas"></canvas>
<p><a onclick="draw_square()" href="#">Draw Square</a></p>
<p><a onclick="draw_rectangle()" href="#">Draw Rectangle</a></p>
</body>
this.foo:bar
没有任何意义,因为它只是this.foo = bar
的一个可接受的别名。 - Trevor Burnham