【发布时间】:2015-06-22 21:50:46
【问题描述】:
我正在尝试通过 opal 浏览器将元素附加到 Volt 项目中的一个页面,如下所示:
if RUBY_PLATFORM == 'opal'
require 'browser'
$document.body << my_dom_element.to_n
end
# controller code below
很遗憾,我遇到了一个错误:
[Error] TypeError: null is not an object (evaluating 'value.nodeType')
(anonymous function) (main.js, line 7772)
我添加的 DOM 元素非常完美。只是下面的代码:
document.createElement( 'myElement' )
我假设 Volt 不喜欢我将元素附加到控制器中的页面,而不是在视图 HTML 文件中手动创建它。有没有办法解决这个问题?我有点需要做这个元素附加的事情,以便与我与 Volt 一起使用的另一个库兼容。
【问题讨论】:
-
你怎么称呼这段代码?你能在某处显示完整的文件吗?我怀疑这是在 DOM 准备好之前调用的。
-
@Ryan 以下是相关文件的完整代码:gist.github.com/ylluminarious/…。仅供参考,这是开箱即用的
main_controller.rb文件,正如您在要点中看到的那样,我试图将元素附加到的页面是开箱即用的“关于”页面。