0
我已经嵌套资源(订单项)和两个插座在我渲染的一个屏幕上。ember 1.0.0 linkTo不适用于嵌套资源transitionTo不工作?
如果我点击一个对象没有任何反应。如果我用href替换linkTo就是同样的问题。当我将鼠标悬停在链接上时,它会显示在浏览器的页脚中,而不是在地址栏中单击时显示。当我手动将它写入地址栏并重新加载它工作的页面时。我究竟做错了什么?
该页面通过简单的sinatra服务器提供。
的index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<!-- Set the viewport width to device width for mobile -->
<meta name="viewport" content="width=device-width" />
<title>Ember Starter Kit</title>
<!-- Included CSS Files (Compressed) -->
<link rel="stylesheet" href="css/foundation.css">
<link rel="stylesheet" href="css/app.css">
</head>
<body>
<script src="js/libs/jquery-1.9.1.js"></script>
<script src="js/libs/handlebars-1.0.0.js"></script>
<script src="js/libs/ember-1.0.0.js"></script>
<script src="js/app.js"></script>
<script type="text/x-handlebars" data-template-name="application">
<h2>Welcome to MyEmberPlayGround.js</h2>
<hr>
{{outlet "left"}}
-------------------
{{outlet "right"}}
</script>
<script type="text/x-handlebars" data-template-name="orders">
<h2> list all orders</h2>
{{#each order in controller}}
<!--
<a href="/#/orders/{{unbound order.id}}">{{order.name}}</a>
-->
{{#linkTo "order" order}}{{order.name}}{{/linkTo}}
{{/each}}
</script>
<script type="text/x-handlebars" data-template-name="order">
<h2> say Hello from order </h2>
</script>
</body>
</html>
这里app.coffee
##setting up global scope to namespace root
root = exports ? this
root.debug = true
App = Ember.Application.create
LOG_TRANSITIONS: true
LOG_TRANSITIONS_INTERNAL: true
LOG_VIEW_LOOKUPS: true
LOG_ACTIVE_GENERATION: true
LOG_BINDINGS: true
#####
##Generate nested Data
##Without serverconnect
#####
App.Order = Ember.Object.extend()
App.Item = Ember.Object.extend()
App.orders = Em.A()
App.items = Em.A()
App.items.pushObject(App.Item.create("id":"1", "name":"o1_item1"))
App.items.pushObject(App.Item.create("id":"2", "name":"o1_item2"))
App.items.pushObject(App.Item.create("id":"3", "name":"o1_item3"))
App.orders.pushObject(App.Order.create("id" : "1" , "name":"Object1", "items":App.items))
App.items.pushObject(App.Item.create("id":"1", "name":"o2_item1"))
App.items.pushObject(App.Item.create("id":"2", "name":"o2_item2"))
App.items.pushObject(App.Item.create("id":"3", "name":"o2_item3"))
App.orders.pushObject(App.Order.create("id" :"2" , "name":"Object2", "items" : App.items))
App.Router.map ->
@route 'orders', path: '/'
@resource 'orders' , ->
@resource 'order', {path: ':order_id'}
App.OrdersIndexRoute = App.OrdersRoute = Ember.Route.extend
#model: -> App.Order.findAll()
model: -> App.orders
setupController: (controller, model) ->
controller.set('content', model)
renderTemplate: ->
@.render("orders",{outlet: "left", into: "application"})
App.OrderIndexRoute = App.OrderRoute=Em.Route.extend
model:(params) ->
console.log params
App.orders[params.order_id]
renderTemplate: ->
@.render("order",{outlet: "right", into: "application"})
感谢任何帮助或暗示
感谢您的解决方案。这工作很好,是关于路由的最佳信息。不幸的是,网络中有太多的虚假信息。你知道路由背后思想的一些好资源吗? emberdoc不太了解这一点。 – user767108