【问题标题】:Ember.js multiple views for same controller OR wizard like routes; how to?Ember.js 为同一控制器或向导(如路由)提供多个视图;如何?
【发布时间】:2014-10-17 11:41:34
【问题描述】:

场景:

你有一个类似巫师的东西。用户在第一页上完成了一些事情,单击下一步并转到第二页,依此类推,直到他到达最后一页。在这里,他单击完成,他的所有输入都使用 ember 模型存储和持久化。

还有两个类似的问题: Ember.js wizard control

Multi-step form (or multiple "pages") in one route using Ember.js

起初我尝试为每个步骤使用路由/控制器/视图,但由于答案基本上是控制器的状态变量并且在转换时会丢失,很明显它不能像这样工作!

然后我采用了上述链接中描述的方法。一条路线,一个控制器,一个包含大量{{#if }} 的模板,因此我只显示当前步骤的字段。我想我可以通过使用部分来改进这一点,因此每个步骤都有自己的模板。

问题是:这是唯一/最好的方法吗?有没有人想出一个更好的方法来实现这样的流程?

【问题讨论】:

    标签: ember.js


    【解决方案1】:

    如果您将每个向导页面设为一个组件,然后将模型作为模板参数传递给每个组件,您将获得一个相当不错的工作流程。 URL 是稳定的(不会为了传递状态而不断在末尾添加垃圾);每当用户输入路径时,很容易让用户进入第一步(例如手动输入 URL,或者更重要的是,完成向导然后点击浏览器的后退按钮);并且您可以在向导的每个页面上执行验证。

    查看我更长的答案here

    【讨论】:

      【解决方案2】:

      其中一种可能的方法是使用Query Parameters,以便您可以在单个向导控制器中管理每个步骤的状态。

      【讨论】:

        猜你喜欢
        • 2012-07-19
        • 2012-10-01
        • 2013-08-11
        • 2013-02-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多