ruby-on-rails - 易于使用 Rails 上的隔离小部件

标签 ruby-on-rails widget

我正在 ruby​​ on rails 上开发一个“游戏平台”。它不是 2D 或 3D 密集型游戏,而更像是问答游戏,想象一下典型的 Facebook 测验,甚至是“你的大脑有多大”之类的游戏。
这里的学生将使用该平台来轻松发展自己的想法。重点是创建一系列可以放置在页面中的小部件,并使它们能够处理数据和 CSS。

为此,我开始创建要集成到页面中的小部件,您只需执行以下操作

<%= widget_name widget_params %>

对他们来说很容易,但为此我需要:
  • 仅呈现部分的助手中的方法
  • 带有标记为 id
  • 的 html 元素的部分
  • javascript 文件中的函数在页面上查找该 id,如果找到则执行其工作(因为大多数小部件会以某种方式使用 JS)
  • 模型中的数据支持。

  • 例如,我的计时器是一个 javascript 函数 + 一个部分,其中 game.timeout 是一个模型,每个游戏都有一个列超时。以及所有包含在帮助程序中的内容,因此用户只需使用 <%= timer @game %>
    请注意,小部件需要更改页面或至少向页面 Controller 发送某种信号以告诉他有关全局更改的信息。例如,计时器小部件不仅会自行终止,而且应该告诉游戏 Controller 游戏也已终止(这就是为什么它们在同一页面中是部分而不是 iframe)。

    学生使用的界面(只有一个衬垫)很容易,我喜欢它,但事实上每个小部件都需要接触这么多地方,避免我轻松地将新小部件部署到框架中,并且通常看起来像一个可怕的设计。

    此外,我刚刚(1 小时前)发现了 Extjs,因为我将开发 GPL,我正在考虑它。

    有什么方法可以让 extjs 或任何其他手工制作或提供的小部件更加孤立,但仍然能够改变更全局的上下文?

    最佳答案

    你已经发现了吗Apotomo ?这是 Rails 的事件驱动小部件,具有可选的状态 - 非常类似于 GUI。

    关于ruby-on-rails - 易于使用 Rails 上的隔离小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/948296/

    相关文章:

    java - 通过 Intent 将数据从 App 传递到 Widget 时的空指针

    javascript - 自动播放下一个声音云

    javascript - Angular 和 rails

    ruby-on-rails - 将自定义国家/地区字段选项添加到 country_select ruby​​ on rails gem

    ruby-on-rails - 我希望能够在 Rails 应用程序的日历上标记开始日期和结束日期之间的日期

    css - rails : How do you associate a stylesheet to a layout?

    ruby-on-rails - 是否可以禁用 Rails 4 中的标准 PUT 路由?

    python - IPython Notebook 两个依赖值小部件的函数

    javascript - 跨域 iframe 小部件设计(最先进的方法)

    reactjs - 为 react-admin 仪表板推荐一个拖放库?