ember.js statemanager用于制表符

man*_*nni 2 ember.js

我有3个标签导航,每个标签的内容显然不同.我正在考虑在Emberjs中使用StateManager来管理我的标签视图.

http://docs.emberjs.com/#doc=Ember.StateManager&src=false

这是一个好主意吗?或者那里有更好的路由器?我看了看

  1. SproutCore的路由
  2. 烬,routemanager

那些比国家管理者更好的人?不使用statemanager的原因是什么?

pan*_*atz 5

您可以使用这些内容,请参阅http://jsfiddle.net/pangratz666/e3wM7/:

把手:

<script type="text/x-handlebars" >
    <ul>
        <li {{action "showFirst" target="App.stateManager"}} >First tab</li>
        <li {{action "showSecond" target="App.stateManager"}} >Second tab</li>
    </ul>
    <div class="tab-content" ></div>
</script>

<script type="text/x-handlebars" data-template-name="first" >
    first
</script>
<script type="text/x-handlebars" data-template-name="second" >
    second
</script>?
Run Code Online (Sandbox Code Playgroud)

JavaScript:

App.stateManager = Ember.StateManager.create({
    rootElement: '.tab-content',
    initialState: 'firstTab',

    showFirst: function(manager) {
        manager.goToState('firstTab');
    },
    showSecond: function(manager) {
        manager.goToState('secondTab');
    },

    firstTab: Ember.ViewState.create({
        view: Ember.View.extend({ templateName: 'first' })
    }),
    secondTab: Ember.ViewState.create({
        view: Ember.View.extend({ templateName: 'second' })
    })
});?
Run Code Online (Sandbox Code Playgroud)

另请参阅博客文章Anatomy of a Ember.js App Part I Redux:Routing and Outlets.

  • 现在尝试寻找解决方案,但这在1.0pre中不起作用 - http://jsfiddle.net/e3wM7/29/ (2认同)