我希望能够在测试时将JavaScript代码注入到我的应用程序中。遵循这一推理,我在repl中做了以下工作。如何获得简单的clojurescript编译的直接结果?
=> (cljs.closure/build '(swap! my-project.my-namespace.my-atom inc) {})
<= "goog.addDependency(\"base.js\", ['goog'], []);\ngoog.addDependency(\"../x8LL7.js\", [], []);"
我再
=> more out/x8LL7.js
<= cljs.core.swap_BANG_.call(null,my_project.my_namespace.my_atom,cljs.core.inc);
是的,看来这就是我想要的。我可能会误解,但我不认为我需要“base.js”依赖项,因为它已经包含在正在运行的应用程序中(正在使用:simple:optimizations)。
我的问题是,我怎样才能得到文件out/x8LL7.js
的内容?我只想要写入out/x8LL7.js
的字符串,因为我没有使用从cljs.closure/build
返回的deps文件字符串。
如果不容易,那么我想我可以解析返回的deps字符串,自己打开文件然后使用内容;没什么大不了的。不过,我希望有更直接的方法。