小编Bac*_*777的帖子

我怎样才能开始使用Perl进行Web开发?

我希望能够为我的Perl程序创建Web前端.我对Perl有很多经验,并且我将大部分代码转换为由Chromatic支持的Modern Perl范例.我有写网页的ZERO经验.(偶尔会出现Word保存为网页).

我相信我知道开始使用哪些工具,我只是难以使用他们的开始文档以及学习工具的顺序.

  • Perl:我都在这里.

  • 舞者:我创建了一个网站,但我很丢失,而cpan文档让我更加困惑.我不知道如何将这些网站与Apache集成,而不是使用Dancer附带的迷你服务器.

  • 模板工具包:这个看起来最直接,我有O'Reilly的书.对于看似简单的东西来说,这似乎是一本非常大的书,所以我知道我错过了一些东西.

  • HTML:我应该学到多少钱?什么是最好的学习路径?

最终,最好的是"使用Perl从头开始构建现代网站"教程,书籍,视频系列或网站.

请问,从哪里开始?

html perl template-toolkit dancer

13
推荐指数
1
解决办法
9577
查看次数

我可以在Dancer中实例化一个对象来返回要显示的值吗?

我的Dancer app模块中有以下代码:

package Deadlands;
use Dancer ':syntax';
use Dice;

our $VERSION = '0.1';

get '/' => sub {
    my ($dieQty, $dieType);
    $dieQty = param('dieQty');
    $dieType = param('dieType');
    if (defined $dieQty && defined $dieType) {
        return Dice->new(dieType => $dieType, dieQty => $dieQty)->getStandardResult();
    }
    template 'index';
};

true;
Run Code Online (Sandbox Code Playgroud)

我有一个名为Dice.pm的Moops类,如果用.pl文件测试它就可以正常工作,但是当我尝试通过Web浏览器访问它时,我收到以下错误:找不到对象方法"new"通过包"骰子"(也许你忘了加载"骰子"?).

我可以和Dancer一起做吗?

以下是Dice.pm的相关代码:

use 5.14.3;
use Moops;

class Dice 1.0 {
    has dieType => (is => 'rw', isa => Int, required => 1);
    has dieQty => (is => 'rw', isa => Int, …
Run Code Online (Sandbox Code Playgroud)

perl dancer moo moops

6
推荐指数
1
解决办法
157
查看次数

可以在 PWA 中使用 EJS 等模板引擎吗?

我正在学习编写渐进式 Web 应用程序,所有示例都使用 html 文件。我更喜欢将 EJS 与节点服务器一起使用。是否可以缓存 ejs 以便可以在本地使用?

ejs progressive-web-apps

6
推荐指数
1
解决办法
1620
查看次数

是否可以将JSON对象传递给ejs renderFile?

我宁愿不必键入我的ejs文件的每个字段名称。这是我想做的事情:

let html = null;
EJS.renderFile('./public/views/results.ejs', {JSON_OBJECT}, (err, str) => {
     html = str;
});
Run Code Online (Sandbox Code Playgroud)

ejs node.js

4
推荐指数
1
解决办法
500
查看次数

如何将Perl脚本表单结果显示到同一网页?

我正在写一个简单的骰子滚轴,我想将三个表单字段传递给Perl脚本,将它们压缩,然后将结果返回到同一页面.我有一切工作,除了相同的页面要求.

这可能吗?

html perl cgi

3
推荐指数
1
解决办法
1419
查看次数

我可以在Moose中重载方法吗?

我正在寻找类似于Java的解决方案,我可以创建具有相同名称但具有不同参数列表的方法.

例如

method makeDeposit() {
    system("cls");
    print "How much money do you want to deposit?: ";
    chomp (my $amount = <STDIN>);
    $self->insufficientFunds(0);
    $self->balance($self->balance() + $amount);
    $self->performBalanceInquiry();
    return;
}

method makeDeposit(Int $amount) {
    $self->insufficientFunds(0);
    $self->balance($self->balance() + $amount);
    $self->performBalanceInquiry();
    return;
}
Run Code Online (Sandbox Code Playgroud)

谢谢!

perl moose

2
推荐指数
1
解决办法
208
查看次数

如何使用Moose Type作为正则表达式匹配表达式?

我的类文件中有以下类型:

has 'cardNumber' => (is => 'ro', isa => 'Int', required => 1);
Run Code Online (Sandbox Code Playgroud)

我正在尝试执行以下操作:

foreach $_ (@accountsInfo) {
      if ($_ =~ m/^$self->cardNumber()/) {
            $self->pushing(split(/,/, $_));
            $self->invokeAccount();
      }
 }
Run Code Online (Sandbox Code Playgroud)

但我不能让它正确测试.如果我在正则表达式斜杠中手动输入我正在寻找的数字,它可以完美地工作.你能帮我用一下cardNumber Type吗?

regex perl moose

1
推荐指数
1
解决办法
210
查看次数

为什么setInterval()在我的ES6代码中不起作用?

我有一个名为main的类,其方法名为setDate().在构造函数方法中,我放了一行:setInterval(main.setDate(), 10000)它只运行对象实例化的初始时间.如果我将该行作为尾调用放在setDate()方法中,它将无限运行并中断浏览器会话.

javascript

1
推荐指数
1
解决办法
7160
查看次数