从.ERL到.YAWS文件调用函数

cgv*_*val 6 erlang yaws

我是YAWS和ERLANG的新手,想从一个不同的.erl文件调用一个函数到YAWS页面.

即我有一个名为webpage.yaws的页面,并有另一个名为utilities.erl的文件,并希望从webpage.yaws中的utilities.erl调用一个函数.

有任何想法吗?

谢谢

joh*_*hlo 7

它非常简单,只需像在Erlang程序中通常那样调用函数,即Module:func_name(arguments)您需要做的唯一事情是确保Yaws知道在哪里可以找到编译的BEAM文件.在Yaws配置文件中添加:

ebin_dir = /tmp/ebin
Run Code Online (Sandbox Code Playgroud)

编译你的utilities.erl,把BEAM文件放入/tmp/ebin,你可以从webpage.yaws文件中调用你的实用程序函数.

完整示例:

website.yaws:

 <html>
  <erl>
    out(Arg) ->
       D=utilities:get_some_strings(),
       {html, ["Retrieved from utilities: ", D]}.
  </erl>    
 </html>
Run Code Online (Sandbox Code Playgroud)

utilities.erl:

-module(utilities).

-export([get_some_strings/0]).

get_some_strings() ->
    "hello world!".
Run Code Online (Sandbox Code Playgroud)