说,我在Phoenix / Elixir中有这部分配置:
use Mix.Config
config :my_app, MyApp.Endpoint,
var1: 111,
var2: 222,
var3_depends_on_var2: ???? # var2 + 666
我想要" var3_depends_on_var2"的值依赖" var2",同时我不想明确地复制粘贴它。如果我无法引用它,我相信我应该使用宏来代替它。是这样吗?如果有,怎么样?值得努力吗?
答案 0 :(得分:2)
由于这些行只是对Mix.config/3
的调用,并且在最后一个参数中发生了翻转,即Keyword
列表,因此无法简单地从另一个参考中引用一个Keyword
值宣言期间。
您可以使用的只是初步var
声明:
use Mix.Config
var = 222
config :my_app, MyApp.Endpoint,
var1: 111,
var2: var,
var3_depends_on_var2: var + 666
答案 1 :(得分:1)
由于这是一个Elixir脚本文件,您可以使用普通变量:
use Mix.Config
var2 = 222
config :my_app, MyApp.Endpoint,
var1: 111,
var2: var2,
var3_depends_on_var2: var2 + 666
我无法想到用宏来做任何非常复杂的方法。