2024年Clojure状态调查! 中分享您的想法。

欢迎!请参阅 关于 页面以了解更多关于如何工作的信息。

0 投票
元数据
编辑于

在评估其命名空间元数据之前,我希望 ns 宏会这样做

  1. *ns* 已经被绑定。
  2. :require,以便能够在元数据表达式中使用 :as 命名空间名称。
    示例

当前(使用完全限定的名称)

    (ns my.app.foo.controller
      {:tape.mvc/interceptors [(re-frame.core/path
                                [:my.app.foo.controller/controller])]}
      (:require [re-frame.core :as rf]
                [tape.mvc :as mvc]))

修改后(使用“快捷”名称)

    (ns my.app.foo.controller
      {::mvc/interceptors [(rf/path [::controller])]}
      (:require [re-frame.core :as rf]
                [tape.mvc :as mvc]))

这种变更是否值得?或可接受?或可行?

1 答案

0 投票

你在这里请求一个解决方案,但我不理解这个问题。你能回溯吗?

这里的第 2 行本应有的作用是什么?这个代码的先前的版本是什么?

我想第 2 行是元数据,你只是想要它更加简洁?
作者
修订了 作者
是的(更新了前后示例),第2行是命名空间元数据,我想使用快捷方式代替完全限定名称,即:`{::mvc/interceptors [(rf/path [::controller])]}` 而不是 `{:tape.mvc/interceptors [(re-frame.core/path [:my.app.foo.controller/controller])]}`。
...