java.lang.IllegalArgumentException: No value supplied for key:Clojure コードで を取得しています。
引数として渡されたマッピングでキーを分解しようとすると、これが起こることを知っています。
ただし、ここで奇妙なのは、この関数が何年もの間、同じデータで正常に機能していることです。そして、違うように見える唯一のことは、関数をインポートする方法です
エラーは次のとおりです。
Caused by: java.lang.IllegalArgumentException: No value supplied for key:
{:style {:color [255 150 150 255], :stroke-weight 2}, :points [[-1 0] [0 -1] [1 0] [0 1] [-1 0]]}
そして、これがそれを投げた関数です。
(defn scale
[val {:keys [style points]}]
{:style style
:points (scale-shape val points)})
つまり、マップに and というキーを含めるように求めており、 and というキーstyleを含むpointsマップが与えられています。stylepoints
そして、このコードは何ヶ月もうまく機能しています。
違いは、インポートされたsshapes/scale場所を使用して呼び出していることです。sshapes
(:require [patterning.sshapes :as sshapes])
以前はscale、スケールが名前空間に入った場所としてそれを呼び出していました
(:require [patterning.sshapes :refer :all])
これはその種のエラーを引き起こす可能性がありますか?