命名插座的放置位置是否有限制?我的模板无法渲染,当我指定into属性时,出现错误。以下是相关代码:https://gist.github.com/knownasilya/5700187

这是错误:

Uncaught TypeError: Cannot call method 'connectOutlet' of undefined

看起来parentView在这里是null:parentView.connectOutlet(options.outlet, view);(第25461行)。

我将into属性设置为插座所在的模板的名称。我做错了吗,这应该是一个路线名称(该父 View 没有任何路线)吗?

儿童景观路线:
App.MapSearchRoute = Ember.Route.extend({
  renderTemplate: function() {
    this.render({
      into: "sidebar",
      outlet: "sidebar"
    });
  }
});

出口在这里:
<ul class="navigation">
  <li>
    {{#linkTo map.search class="accent-blue"}}
      <i class="icon-search icon-white"></i>
    {{/linkTo}}
  </li>

  <li>
    {{#linkTo map.overlay class="accent-purple"}}
      <i class="icon-th-large icon-white"></i>
    {{/linkTo}}
  </li>

  <li>
    {{#linkTo map.contact class="accent-green"}}
      <i class="icon-envelope icon-white"></i>
    {{/linkTo}}
  </li>
</ul>

{{outlet sidebar}}

并且先前的模板在此模板中呈现,该模板在主出口中呈现:
<div id="map"></div>
{{view App.SidebarView}}

最佳答案

ember guides是检查渲染帮助的好地方。

您可以根据需要设置任意数量的网点。据我所知,您的代码看起来不错。我假设您也定义了一个mapsearch模板?那就是将被渲染到侧栏中的模板。

尝试将侧边栏出口弹出到父模板中。由于它没有嵌套在侧边栏模板的任何位置,因此不会产生视觉差异。确保渲染模板时更改“into”标志。让我知道如何为您解决问题。

09-17 10:45
查看更多