clojurescript相关内容

如何分析Closure编译器包大小

我在ClojureScript中有一个应用程序,它使用Google的Closure Compiler作为编译器后端。使用高级优化的结果捆绑包似乎太大了。我责怪依赖关系但是如何找出输出包中哪些模块占用的字节数最多?我扫描了所有Closure Compiler选项,但没有找到任何有用的东西。然后我尝试了解源映射并使用它来计算单个模块大小但没有成功。 我想要一个树状输出,我可以挖掘和找到最大的模块 ..

访问“this”在Clojurescript中

有没有办法在clojurescript中访问“this”对象? 我是在我包装图标时有事件传播的问题使用锚并尝试将手柄连接到锚。如果在处理程序中无法访问“this”,我会不时处理触发事件的内部图标,并且其他时间会触发锚点。 编辑: 如下所示,这就是这样做的方法。一个例子可能是 (defn my-handler [e] (这就是这个 (让[data-attr(.data( ..
发布时间:2019-05-24 20:58:14 前端开发

从树上迭代地构造Trie

简介 以下函数迭代遍历由嵌套向量组成的树结构。它针对谓词测试每个叶子。通过该真值测试的所有叶子的路径将在 Trie结构中返回。后者以非冗余方式描述了所有找到的路径。 (defn get-trie-of-matches [is?tree] (loop [[tree i path fk] ] [tree 0 [] nil] accum {}] (cond (> = i(count ..
发布时间:2018-11-15 15:47:19 其他开发

我如何使用Clojurescript与html DOM进行交互?

我是Clojurescript的新手。我想知道如何创建html元素,以及如何使用clojurescript来更改它们的属性。我似乎无法在网上找到很多相关信息。 解决方案 ClojureScript为JavaScript和浏览器提供了良好的互操作性。您可以直接调用JavaScript全局变量和函数来查询和操作DOM,例如: b。(.getElementById“app”) (。-inner ..
发布时间:2018-06-21 12:50:17 前端开发

ClojureScript和HTML实体

如果我使用“& nbsp;”这个字符串是直接打印出来的。 我使用Crate库。 解决方案阅读后明白: https:/ /github.com/ibdknox/crate/issues/12 基本上,问题似乎是Crate直接插入DOM,从而跳过实体扩展(如果我误解了,请有人纠正我) 一种解决方案是使用下面的字符串来代表& nbsp: \\\ 。 ..
发布时间:2018-06-15 12:43:42 前端开发

什么是Clojure规范?

我无法理解 clojure 的意图。 spec 它能解决什么样的问题? 为什么要使用它? 解决方案 创建数据和功能的规范。规范是他们的核心谓词(基于现有的Clojure谓词)和结构化的,而不是像静态类型语言中那样基于类型。通过基于谓词的规范,您可以编写比大多数类型系统更具表现力的规范,并使用与您的代码相同的语言。 在函数上定义的规格指定规范的参数,返回值和args 和函数 ..

如何在Clojurescript中捕获任何Javascript异常?

在我的通信层中,我需要能够捕获任何JavaScript异常,将其记录下来,并按照通常的方式进行操作。 Clojurescript中捕获异常的当前语法规定我需要指定被捕获的异常的类型。 我试图使用nil,js / Error, js / object在catch窗体中,它没有捕获任何JavaScript异常(可以将字符串作为对象的类型)。 我会欣赏任何提示如何这可以在Clojuresc ..

在Clojurescript中客户端是否有用于操作CSS的lib?

我想在客户端上制作新的CSS规则,例如进行CSS转换。显然jQuery有这样的东西,但是在Clojurescript的世界里呢? 我发现Gaka和Garden在服务器端生成了像Hiccup那样的CSS,但是如果我想在客户端做动态CSS? Enlive,Dommy或其中任何一个Clojurescript lib这样做? 解决方案 查看 jayq 您可以通过简单内置 css ..
发布时间:2017-07-22 13:49:54 前端开发

ClojureScript中的js / console.log

我想用ClojureScript实现一个函数,以简化 js / console.log ,如下所示: (defn log [& args] (apply js / console.log args)) 调用它:(log“foo”“bar”) throws: TypeError:非法调用 但这样做有效:(js / console.log“foo”“bar”) ..
发布时间:2017-04-18 04:50:03 开发方法

使用Rhino从命令行执行编译的ClojureScript

我知道ClojureScript可以在JavaScript REPL中执行,也可以编译成JavaScript,然后在浏览器中运行。我找不到一个方法来使用它在服务器端与Rhino。这里是我的思维方式,我有一个简单的源文件: (ns simple.hello) (println“Hello,world”) 我编译为 hello .js 。我尝试运行 java -ja ..
发布时间:2016-12-20 17:50:29 其他开发

获得序列中一个项目的出现的位置

从aa序列,我需要获取给定项目出现的所有位置。 我问自己,如果这是一个很好的方法来解决问题: (defn get-positions [item coll] ( - >>向量coll) (filter(fn [[_ v]](= item v))) (map first))) 这也适用于字符串,它们将被第一个映射转换为序列。但是,如果我知道输入是字符串,这个问题会有更多 ..
发布时间:2016-11-27 22:24:40 其他开发语言

写“欺骗” Quine在Clojurescript

假设我们想在clojure中写一个骗子,我们可以这样做: (ns cheating-quine) ...这里的东西并不重要... (println(slurp * file *)) 现在,这在Lein Figwheel中不起作用,因为文件的值最终类似于/tmp/form-init########.clj,并且包含某种类型的引导代码。 问题:我们如何得到这个“欺骗 ..
发布时间:2016-11-27 22:23:35 其他开发语言

Clojure + Clojurescript:宏读取当前文件的代码

我已经尝试过了 (defmacro magic [] (slurp * file *)) 这在clojure中可以正常工作,但不能在clojurescript中使用(至少不使用lein figwheel)。 原始问题 我需要以下工作在Clojure和Clojurescript。我认为宏是正确的解决方案,但我对其他技术开放。 我想要一种方式读取当 ..
发布时间:2016-11-27 22:23:22 其他开发语言

代码不是从go块调用,但它的工作原理是REPL

我有更新DOM的代码。 new-recipe!调用API以获取新的配方字符串。 update-recipe-state 接下来在屏幕中更新此状态。最后,我们调用 update-transition-buttons 。 添加监听器到配方按钮![] “监听go按钮,创建一个新配方并显示它” (create-click-event-listener!(dommy / sel1: #button- ..

Clojure& ClojureScript REPL(emacs + cider + boot)

引导任务 boot-cljs-repl 提供了一种连接到 如果正确添加到build.boot依赖项中,可以调用函数(start-repl ),以便启动ClojureScript REPL。 我从Clojure repl中连接到Emacs, 苹果酒软件包的帮助,包含以下函数:(cider-connect) 我想弄清楚如何在两个不同的Emacs缓冲区中同时拥有Clojure REPL ..
发布时间:2016-11-27 22:13:10 其他开发语言