EmberJS路由器和外部库



我目前在使用EmberJS路由器和外部库时遇到困难。使用EmberJS路由器,路由功能可以完美运行。此外,在组件中包含外部库也按预期工作。

但是两者的结合不起作用。

详细:库 (pdf.js( 正在操作 DOM 并在滚动文档时插入锚标记。这些锚标记工作正常。但是,如果我尝试"捕获"事件并使用 EmberJS 路由功能,它将无法正常工作!我无法在 DidRender(( 函数中创建事件侦听器并使用 preventDefault,因为在执行 DidRender 期间元素不存在。

有没有人遇到同样的问题,或者可能有解决这个问题的方法?

干杯弗朗兹

我假设您正在使用一个组件,

在钩子内初始化第 3 方库didInsertElement而不是DidRender

DOM 在该钩子中准备就绪,您可以使用 this.$() 评估组件 HTML 元素。

这是什么意思?

但是,如果我尝试"捕获"事件并使用 EmberJS 路由功能,它将无法正常工作!

DOM 操作操作都是同步操作。在 didInsertElement 钩子中绑定您自己的偶数处理程序,但要密切注意您的this上下文。