2012-04-28 43 views
2

我想了解如何jQueryUI和Emberjs之间的集成应该完成。我是新来的两个库和JavaScript,所以这可能是一个新手问题。
我有这样的jsfiddle设置:http://jsfiddle.net/pSKgV/1/并呈现此生成的文档:Emberjs和jQuery UI集成问题

<body class="ember-application"> 
    <div id="ember129" class="ember-view"> 
     <div id="ember163" class="ember-view ui-draggable"></div> 
    </div> 
</body> 

的代码大多是从这个博客帖子采取:http://www.lukemelia.com/blog/archives/2012/03/10/using-ember-js-with-jquery-ui/

问题:我如何装上去内DIV中?我想把一些内容,我可以绑定到一些东西。 我试过以下内容: {{view App.Draggable}}Drag Me{{/view}}但是,这给出了一个错误。我也试着 添加此向App.Draggable对象:

didInsertElement: function() { 
    this.$().html(“Drag Me”) 
    } 

但是这并没有产生预期的结果。如何在这种情况下使用/访问jQuery/jqueryui功能的最佳方式,如.html()
此外,外部div是否必要或我可以使此视图只呈现一个div元素?

问候 奥斯卡

回答

4

http://jsfiddle.net/ud3323/XMgwV/

您忘记了#符号{{#view App.Draggable}}Drag me{{/view}}。您还应该在Ember中使用Ember.Namespace.create()创建名称空间,而不是仅使用空的{}

+0

啊,现在它按预期工作,谢谢先生! – oskbor 2012-04-28 18:57:00

+0

您应该接受答案,以便Roy获得他的声望:) 此外,使用Ember.Namespace的一个令人信服的理由是调试将变得更容易,因为对象名称的通用符号将替换为已批准的(MyNamespace.MyClass)字符串调试输出。便利! – 2012-04-29 04:02:04

+0

原谅我的礼貌,答案现在接受!我也可以将答案添加到我的后续问题中。外部div似乎是来自ember/handlebars的占位符。其他视图元素也在这个div内部结束。不确定访问.html方法或其他类似方法是否有意义,应该避免它 – oskbor 2012-04-29 10:24:50