2017-06-21 24 views
0

我正在构建一个使用Ember.js的原型SPA应用程序,并快速获取和工作我有(3)三个单独的JavaScript组件,即日历/待办事项列表,JavaScript时钟,和另一个jquery类型的插件。我希望所有这些都一起同步。Ember.js中的多个JavaScript组件

换句话说,当有人输入待办事项或日历条目时,它会将模拟表盘与时间着色,然后更新其他插件的细节。

当然,现在所有这些组件都不会写成彼此通信。他们只是由不同的开源开发人员编写的独立插件。

我有两个关于如何去做这件事的问题。

1)这是荒谬的绕了这种方式,它会好得多只取每个组件拆开,看看他们是如何工作的,然后将其从底部代码,以便以统一的方式一起工作。

评论:以上是好的,但HUGELY耗时,并失去了快速工作的目的,为概念验证。我只是基本上会用postgres写一个Rails后端,并在你使用它的时候用数据填充所有的控件并更新。

2.)如果你可以使用这些组件,那么它是可取的或可以做到的黑盒子或包装每个这些作为一个Ember组件,即把它们分别成组件,然后让Ember通过数据来回。

当然,这里的目标是让一些东西工作,并理解它是如何放在一起的,然后从这些知识中,从Ember/ES6或其他框架中重写整个东西。

谢谢你们!

回答

0

你可以很容易地将jQuery插件包装到一个ember组件中。 如果您需要在组件呈现时进行一些初始化,您可以在'didInsertElement'钩子中进行初始化。 https://guides.emberjs.com/v2.14.0/components/the-component-lifecycle/#toc_integrating-with-third-party-libraries-with-code-didinsertelement-code

这里是从我的应用程序的示例组件: https://github.com/datafruits/datafruits/blob/master/app/components/datafruits-player.js#L102