我想创建一个矢量的符号状态表示,该矢量同时保存有关它的极坐标和矩形表示的信息。
即。我希望用户能够做到:
vector.angle = 90
vector.mag = 1
console.log vector.y #=> 1
-OR -
vector.x = 0
vector.y = 1
console.log vector.angle #=> 90
任何人都可以想到用&符号做到这一点的方法吗?
答案 0 :(得分:0)
这是一个老问题,但有人可能需要这个。
马上我可以想到一种方法来做到这一点。您需要使所有变量独立,然后监听更改以更新其他值。因此,您要在模型变量props
,angle
,mag
,x
的{{1}}中定义,然后在y
中附加事件侦听器你的观点或其他地方的每个变量。例如,对于initialize
,您可以执行以下操作:
angle
并为四个变量中的每一个重复这一点(有优化的空间,但你明白了。为了避免与这个例子的循环依赖关系,你需要确保一旦你重新计算,例如,通过使用任何x,你得到相同的角度。