我正在整理一些Elm代码,我想知道如何执行以下操作:
假设我有以下文件结构
Project
|
|---Car
|
|--- BMW.elm
|
|--- Mercedes.elm
|...
Run Code Online (Sandbox Code Playgroud)
假设我已将BMW和梅赛德斯代码分成不同的文件以保持我的代码小而且分离,所以我更容易添加另一个文件,比如说 Toyota.elm
现在,我希望Project文件夹中的任何文件只需访问文件Car夹中的所有文件而无需编写
import Car.BMW (..)
import Car.Mercedes (..)
...etc...
Run Code Online (Sandbox Code Playgroud)
理想情况下,我想写一些类似的东西
import Car (..)
Run Code Online (Sandbox Code Playgroud)
这让我可以访问每个文件中的所有内容.
可能吗?如果是这样,最好的策略是什么?
Elm 不支持重新导出模块,因此不可能创建单个模块来导出少数可用于限定函数的其他模块。假设您有不同的函数名称,您可以执行以下操作:
module Utils where
import Foo
import Bar
foo = Foo.foo
bar = Bar.bar
Run Code Online (Sandbox Code Playgroud)
然后你可以做
module Other where
import Utils (..)
baz = foo 1 2 3
gak = bar 2 3
Run Code Online (Sandbox Code Playgroud)
但是您将无法获得要从 Utils 模块导出的完全限定名称。
希望这可以帮助!