Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Elixir 在Phoenix框架上放置帮助器模块的位置_Elixir_Phoenix Framework - Fatal编程技术网

Elixir 在Phoenix框架上放置帮助器模块的位置

Elixir 在Phoenix框架上放置帮助器模块的位置,elixir,phoenix-framework,Elixir,Phoenix Framework,我想添加一个助手模块来使用 但是当我将defmodule放入 /lib/Shopper/CallApi.ex 和在中使用 /web.ex 结束 编译器因错误而失败 == Compilation error on file web/controllers/page_controller.ex == ** (UndefinedFunctionError) undefined function: Shopper.CallApi.__using__/1 Shopper.CallApi.__us

我想添加一个助手模块来使用

但是当我将
defmodule
放入

/lib/Shopper/CallApi.ex

在中使用

/web.ex

结束

编译器因错误而失败

== Compilation error on file web/controllers/page_controller.ex ==
** (UndefinedFunctionError) undefined function: Shopper.CallApi.__using__/1
    Shopper.CallApi.__using__([])
    web/controllers/page_controller.ex:2: (module)

所以。。。在何处定义CallApi.ex以及在何处声明它?

当您调用
使用Shopper.CallApi
时,将调用
\u使用
宏-这是特定于元编程的。如果要在模块中使用
Shopper.CallApi
中定义的函数,请改用
alias Shopper.CallApi

alias
require
import
之间的差异记录在中,而
using
则记录在中


另一方面,通常在elixir项目中,文件以snake_case-
call_api.ex
命名,而不是
CallApi.ex

和。。我认为
use
文档对于像我这样的初学者来说不够清晰,因为文件名已经是xxxx_api.ex的形式,但是我需要删除xxxx部分。糟糕的编辑:)
== Compilation error on file web/controllers/page_controller.ex ==
** (UndefinedFunctionError) undefined function: Shopper.CallApi.__using__/1
    Shopper.CallApi.__using__([])
    web/controllers/page_controller.ex:2: (module)