Python 是否从Elm中的嵌套目录导入模块?

Python 是否从Elm中的嵌套目录导入模块?,python,import,elm,multi-module,Python,Import,Elm,Multi Module,如果我有这样的目录结构: src ├── Commands.elm ├── Decoders.elm ├── Main.elm ├── Messages.elm ├── Models.elm ├── Page │   ├── Cats │   │   ├── Main.elm │   │   ├── Style.elm │   │   └── ... │   ├── Pieces │   │   ├── Main.elm │   │   ├── Style.elm │

如果我有这样的目录结构:

src
 ├── Commands.elm
 ├── Decoders.elm
 ├── Main.elm
 ├── Messages.elm
 ├── Models.elm
 ├── Page
 │   ├── Cats
 │   │   ├── Main.elm
 │   │   ├── Style.elm
 │   │   └── ...
 │   ├── Pieces
 │   │   ├── Main.elm
 │   │   ├── Style.elm
 │   │   └── ...
 │   └── Players
 │       ├── Main.elm
 │       ├── Style.elm
 │       └── ...
 ├── Routing.elm
 ├── Style
 │   ├── Index.elm
 │   ├── MainCss.elm
 │   └── Main.elm
 ├── Update.elm
 └── View.elm
我找到了一些示例,展示了如何从目录导入模块,但找不到如何从子驱动器导入模块的示例。 例如,如何在
View.elm
中导入
Page/Cats/Main.elm


在Python中,我会在每个嵌套目录中放置一个
\uuuu init\uuuuuuuuuuuupy
,将它们转换成包,这样我就可以从Page import Cats或Page.Cats import Main访问其中的模块。Elm中有类似的概念吗?

假设
src
位于
Elm package.json
源目录中,只需确保该文件中的模块名称与路径匹配,即
Page.Cats.Main

module Page.Cats.Main exposing (add)

add x y = x + y
然后在
View.elm
中导入:

import Page.Cats.Main

-- You can now call functions defined in that module like this:
-- Page.Cats.Main.add 1 2

这就解决了!我不知道在公开模块时必须镜像目录结构。谢谢你的快速回复!是的,模块名称必须与文件路径匹配。这就是Elm编译器为每个
导入查找模块文件的方式。