女士&们,
简短版本: 尝试动态创建Spine模型类。基本上我从服务器获得一个JSON,告诉我模型名称是什么以及它的属性是什么,然后我会尝试创建一个派生自spine.model的类。
由于Spine.js使用的是在实例化之前配置的Coffeescript类,我想动态创建一个Coffeescript类 - 哪个有效,只有部分继承的功能没有。
问题: 虽然继承的函数有效,但fetch似乎不起作用,似乎无法设置类名。
代码: http://jsfiddle.net/thomasf1/eqksA/5/
你可以在多大程度上推动Coffeescript。提前感谢您解决这个先进谜题的任何线索。
答案 0 :(得分:1)
我不确定Spine.js是如何工作的,但查看代码时我注意到fetch
是CDModel
的类方法,这就是你在第一次测试中使用它的方法获取“静态消息”,但对于动态类,您尝试使用fetch
作为实例方法。
为了我自己的清晰度,我将名称更改为DynamicClass,但我执行了以下操作:
// The class name is DynamicClass
DynamicClass = gen ("Testclass")
// ... more code ...
DynamicClass.bind("refresh change", (item) -> $("#element2").html DynamicClass.first().message )
params = type: 'POST', data: 'json=[{"message":"Dynamic msg"},{"message":"another message"}]'
DynamicClass.fetch(params)
我注意到这只有当你注释掉第一个测试的调用时才有效,但是不熟悉Spine.js我不完全确定为什么会这样。
我希望这会有所帮助。 桑德罗