Hi,
此法不错。谢谢!
/Heng
于 2011年04月14日 12:18, Fayland Lam 写道:
> #!/usr/bin/perl
>
> package C;
>
> use Moose;
>
> sub XXX { 'XXX' };
>
> package B;
>
> use Moose;
>
> has 'session' => (
> is => 'ro',
> isa => 'C',
> default => sub { C->new },
> handles => ['XXX']
> );
>
> package A;
>
> use Moose;
>
> has 'req' => (
> is => 'ro',
> isa => 'B',
> default => sub { B->new },
> handles => ['XXX']
> );
>
>
> package main;
>
> my $a = A->new;
>
> print '1 ' . $a->XXX . "\n";
> print '2 ' . $a->req->session->XXX . "\n";
>
> 差不多就这个样子
>
> On 2011/4/14 11:59, Beckheng Lam wrote:
>> 可以,有个叫做delegate的概念能这样做。
>>
>> 我的目的是想简化一下代码而已。
>>
>> 于 2011年04月14日 11:00, cnhack TNT 写道:
>>> Moose 正在学习中,不过,Moose 可以实现你所需要的这种功能么?
>>>
>>> 如果要多次调用 XXX(),直接:
>>>
>>> $session = $self->req()->session();
>>> $session->XXX();
>>>
>>> 这样?
>>>
>>> 2011/4/14 Beckheng Lam <[email protected]
>>> <mailto:[email protected]>>
>>>
>>> Hi,
>>>
>>> 例如我有个Class,带了一个req属性。可以使
>>> 用$self->req()->session()->XXX() 的方法。
>>> 如何在handler中写明,就可以直接$self->XXX()而无
>>> 需$self->req()->session()->XXX()或者$self->session()->XXX()这 样?
>>>
>>> 谢谢!
>>>
>>> --
>>> 诸法从缘起,如来说是因。
>>> 彼法因缘尽,是大沙门说。
>>>
>>> --
>>>
>>> --
>>
>> --
>> 诸法从缘起,如来说是因。
>> 彼法因缘尽,是大沙门说。
>>
> --
> Fayland Lam // http://www.fayland.org/
>
--
诸法从缘起,如来说是因。
彼法因缘尽,是大沙门说。
--
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 [email protected]。
要取消订阅此网上论坛,请发送电子邮件至 [email protected]。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。