在Yaws框架中提供的动态WEB页文档中,我们可以用<erl></erl>嵌入Erlang代码来定义函数,然后使用out(Args)函数来调用它,以达到实现动态页面目的。
按照目前流行的WEB后端开发的基本方式,Erlang代码定义的业务函数和静态页面的HTML代码应尽量分开存储在不同的文件中,在Yaws中也是可以实现的。
一、修改配置文件
Yaws在渲染页面内容时,会根据配置文件来自动搜索模块并实现对其中的函数调用,所以要实现代码分离,首先要修改配置文件,如下图所示:
配置文件的第14行添加了搜索目录为d:\Yaws2/myebin(注意这里路径的写法)。
二、编写相关外部被调用函数
这里只是一个简单的示例,其文件放在自动搜索目录d:\Yaws2/myebin中,即:

%% d:\Yaws2/myebin/my_out.erl -module(my_out). -export([out/0]). out() -> "<p>Hello Out!</p>".
讯享网并将其编译为.beam文件。
三、实现调用外部模块函数的页面
讯享网<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
<erl>
out(Arg) ->
{html,my_out:out()}.
</erl>
</body>
</html>可见,在erl标签中,直接调用了外部模块my_out中的out()函数。
四、测试
浏览URL:localhost:8080/myout.yaws,如图:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/22905.html