【问题标题】:How can I have multiple widgets per page?每页如何有多个小部件?
【发布时间】:2014-01-29 23:13:39
【问题描述】:

我是 Ember.js 的新手,过去几天我一直在研究 Ember.js 是否适合我正在从事的项目。我不知道小部件是否适合在这里使用,但我不知道还能怎么称呼它。

我的应用需要在任何给定页面上显示多个“小部件”。例如,应用程序的主页可能会显示最近的新闻、系统更新和最近的帖子。在所有页面上都可能有一个或多个无处不在的小部件(想想 Facebook 上的朋友列表)。

Ember.js 可以处理这个吗?我读过的所有内容都将 URI 绑定到路由,并且将路由绑定到单个模型(或相同模型类型的集合)。我需要阅读哪些内容才能详细了解如何实施我需要实施的内容?

【问题讨论】:

    标签: javascript ember.js


    【解决方案1】:

    看看Ember Components,你可以给他们一个模型,他们有一个自容器控制器/视图和模板,它们非常适合创建具有自包含逻辑的可重用 UI 元素。

    对于无所不在的事物,您可以查看Application TemplateNested Routes。嵌套路由非常适合在 UI 中创建层次结构:

    例如,您的页面页眉/页脚将在应用程序模板中,您有一个路由“/posts”,其中包含侧边栏上的帖子列表,然后是一个嵌套路由“/post”,它填充主要内容区域你的屏幕。如果您访问 url /posts/1,它将显示页眉/页脚(应用程序模板)、帖子列表(帖子模板)和 id 为 1 的帖子的内容(帖子模板)。

    【讨论】:

      【解决方案2】:

      我个人不确定 Ember 是否适合您。 Ember 的路由器是像堆栈一样实现的。取以下网址

      #/clock/weather/time
      

      当用户决定他们不想要 clock 小部件时,它需要从 url 中弹出所有项目以删除 clock(销毁所有子视图)。

      现在,如果 url 本身不代表小部件,它可能是另一回事。如果小部件基于用户设置并且不由 url 表示,那么它对您来说非常好。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-03-12
        • 1970-01-01
        • 2019-11-27
        • 2018-09-13
        • 2020-07-16
        • 1970-01-01
        • 2021-03-01
        相关资源
        最近更新 更多