我一直在关注om教程。我使用Light Table来设置外部浏览器连接。另外,在我的clojurescript代码中,我正在调用(enable-console-print!)
将我的println语句发送到浏览器控制台。
问题在于,当我打印om组件时,例如:
(println (om/build my-component-function my-data))
我得到的输出是:
#<[object Object]>
如果我只是在LightTable中评估(om/build my-component-function my-data)
,我会遇到同样的问题。
能够检查此对象将有助于调试。如何打印更有意义的内容?
答案 0 :(得分:10)
1尝试使用等同于(.log js/console object)
console.log(object);
2您也可以安装React Developer Tools extension for Google Chrome,这样您就可以浏览页面上的React / Om组件
答案 1 :(得分:3)
您可以阅读Om项目的https://github.com/swannodette/om
的README文件您可以使用ankha,一个EDN检查器视图。然后你可以打印你的组件edn并传递给ankha。其他解决方案可以是(.dir js/console object)
,您可以在firebug或chrome控制台上检查组件
答案 2 :(得分:2)
试试cljs-devtools。该库利用&#34;自定义格式化程序&#34;在Chrome Javascript控制台中漂亮地打印clojure数据结构。
当您在项目中启用自定义格式化程序并集成库时,这应该打印您的对象:
(.log js/console your_namespace.your_object)
同样在控制台中输入应该有效(代码完成)
your_namespace.your_object
免责声明:此功能在Chrome开发工具和我的图书馆作者中具有实验性。