首页 > 解决方案 > 如何在 Clojure 中嵌套 require?

问题描述

假设我有一个命名空间parent.namespace,它有两个孩子child1.namespacechild2.namespace即两个都需要parent.namespace。两者都child1.namespace需要child2.namespace一些包(:require [some.package :refer [stuff]])。有没有办法在 parent.namespace 中只需要这个包一次,然后在两个孩子中只需要 parent.namespace 而不必some.package分别在每个孩子中需要?

标签: clojurenamespacespackage

解决方案


不,没有您建议的嵌套或继承行为。每个子命名空间必须如下所示:

(ns child1.namespace
  (:require 
    [parent.namespace :as parent]
    [some.package :refer [stuff]))

推荐阅读