小编vie*_*bel的帖子

在Clojure中,如何动态使用java类?

在Clojure中,如何使用存储在变量中的java类?

我该如何修复以下代码?

(def a java.lang.String)
(new a "1"); CompilerException java.lang.IllegalArgumentException: Unable to resolve classname: a
Run Code Online (Sandbox Code Playgroud)

为什么这个工作正常?

(def a str)
(a "1")
Run Code Online (Sandbox Code Playgroud)

clojure

10
推荐指数
3
解决办法
2983
查看次数

在Clojure中,如何分组元素?

在clojure中,我想聚合这些数据:

(def data [[:morning :pear][:morning :mango][:evening :mango][:evening :pear]])
(group-by first data)
;{:morning [[:morning :pear][:morning :mango]],:evening [[:evening :mango][:evening :pear]]}
Run Code Online (Sandbox Code Playgroud)

我的问题是:evening:morning是多余的.相反,我想创建以下集合:

([:morning (:pear :mango)] [:evening (:mango :pear)])
Run Code Online (Sandbox Code Playgroud)

我提出了:

(for [[moment moment-fruit-vec] (group-by first data)] [moment (map second moment-fruit-vec)])
Run Code Online (Sandbox Code Playgroud)

有更惯用的解决方案吗?

group-by clojure aggregate-functions

10
推荐指数
1
解决办法
2594
查看次数

如何在 npm 中发布一个 dist 文件夹

我有一个 javascript 库,我想在 npm 上发布:我们称之为foo. 问题是客户端要使用的 javascript 文件位于dist文件夹下。因此,目前客户必须dist在他们的import声明中包含如下内容:

import { bar } from 'dist/foo'
Run Code Online (Sandbox Code Playgroud)

我想允许客户在foodist明确提及的情况下导入库,如下所示:

import { bar } from 'foo'
Run Code Online (Sandbox Code Playgroud)

有没有办法在客户package.jsonfoo或在package.json客户中添加属性?

备注:javascript 文件在dist文件夹中的原因是因为我的库是用clojurescript. 因此,源文件srcdist.

node.js npm

10
推荐指数
1
解决办法
1万
查看次数

clojure如何在两个seqs的元素上执行一个函数?

在Clojure中,在两个seq上并发迭代并在两个运行元素上调用函数的最佳方法是什么?例如:

(def a (range 3))
(def b (range 100 103))
(defn my-func [] ...) ;some custom code
Run Code Online (Sandbox Code Playgroud)

代码应该执行my-func 3次,如下所示:

(my-func 0 100)
(my-func 1 101)
(my-func 2 102)
Run Code Online (Sandbox Code Playgroud)

如何在不定义任何函数或宏的情况下实现这一目标?

clojure

9
推荐指数
1
解决办法
3351
查看次数

在Clojure中,如何解构地图的所有键?

在clojure中,可以像这样构造一些地图的键:

(let [{:keys [cpp js]} {:cpp 88 :js 90}] 
   (println js); 90
   (println cpp); 88
 )
Run Code Online (Sandbox Code Playgroud)

有没有办法解构地图的所有键?

也许是这样的:

(let [{:all-the-keys} {:cpp 88 :js 90}] 
   (println js); 90
   (println cpp); 88
 )
Run Code Online (Sandbox Code Playgroud)

clojure

9
推荐指数
3
解决办法
3151
查看次数

什么是iPad mini用户代理?

什么是iPad mini用户代理?

如何区分iPad和iPad mini?

ipad ios ipad-mini

9
推荐指数
1
解决办法
1万
查看次数

使用clojure.string会导致警告

使用clojure.string时,我收到以下警告

WARNING: replace already refers to: #'clojure.core/replace in namespace: tutorial.regexp, being replaced by: #'clojure.string/replace
WARNING: reverse already refers to: #'clojure.core/reverse in namespace: tutorial.regexp, being replaced by: #'clojure.string/reverse
Run Code Online (Sandbox Code Playgroud)

我的clojure脚本是:

(ns play-with-it
  (:use [clojure.string]))
Run Code Online (Sandbox Code Playgroud)

有没有办法解决这些警告?

clojure

8
推荐指数
2
解决办法
1872
查看次数

在移动野生动物园的div中切割iframe

我想要scale一个iframe mobile safari.

我在iframe里面包括一个div.

<html>
<body>
    <div id="iframe_container">
        <iframe src="http://jsfiddle.net/viebel/kTzDS/show" style="width:300px;height:300px;"/>
    </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

现在我正在div使用此代码扩展:

$(function() {
    $('#iframe_container').css({
        '-webkit-transform': 'scale(0.7)',
        '-webkit-transform-origin': '0 0 '
    });
});?
Run Code Online (Sandbox Code Playgroud)

的iOS/Safari浏览器,将iframe被切断(即不能完全看出),而在台式机/镀铬中,iframe不会削减.

这是一个jsfiddle页面,代码如下:http://jsfiddle.net/viebel/tJQUH/

只是为了澄清:这是一个演示页面,演示了真正的问题 - 在iPad/iPhone Safari上打开时 - 所有这三行都应该具有相同的大小:http://jsfiddle.net/viebel/tJQUH/show

请告诉我该怎么办才能看到iframeMobile Safari完全未切割?

javascript css html5 mobile-safari ios

8
推荐指数
1
解决办法
4948
查看次数

在clojure中,如何编写一个应用多个字符串替换的函数?

我想编写一个函数replace-several来接收一个字符串和一组替换并应用所有替换(替换时看到以前替换的结果).

我想到了以下界面:

(replace-several "abc" #"a" "c" 
                       #"b" "l"
                       #"c" "j"); should return "jlj" 
Run Code Online (Sandbox Code Playgroud)

两个问题:

  1. 它是clojure中最惯用的界面吗?
  2. 如何实现这个功能?

备注:要进行单次替换,可以replace使用clojure.string.

clojure

8
推荐指数
5
解决办法
2551
查看次数

在ClojureScript中,如何显示带有2位小数的浮点数?

我试过使用with-precision但它不起作用:

(.log js/console (with-precision 2 1.2345)) 
Run Code Online (Sandbox Code Playgroud)

所以我用过toFixed:

(.log js/console (.toFixed 1.2345 2)) 
Run Code Online (Sandbox Code Playgroud)

但我觉得这不是那种惯用的做法.

另外,我不明白为什么with-precision不起作用.

请激励我......

clojurescript

8
推荐指数
2
解决办法
4281
查看次数