Я получаю эту ошибку и не могу понять, почему это происходит. Это происходит, когда я перехожу к другой подпрограмме. Возможно, есть кое-что, что мне нужно понять о Mojolicious о том, почему это происходит.Mojolicious: Не удается вызвать метод «render» по неопределенному значению
Вот исходный код моей программы:
#!/usr/bin/perl
use Mojolicious::Lite;
get '/' => sub { &start_home; };
app->start;
sub start_home {
my $d = shift;
my $something = $d->param('something');
### Do things with $something.... etc.. etc..
&go_somewhere_else; ### Go somewhere else
}
sub go_somewhere_else {
my $c = shift;
$c->render(text => "Hello World!");
### End of program
}
Я передаю значение на визуализатора и есть значение - Почему бы это сказать, что это не определено? Я понимаю, что это происходит только в том случае, если вы переходите к подпрограмме и пытаетесь сделать вывод.
Моя операционная система - это Windows, и я использую Strawberry Perl.
@Eugen Ваше изменение было неправильным.Вся идея этого первого блока кода заключается в том, что '@ _' пуст в функции, поэтому нет необходимости передавать его. Я объясняю это в нижеследующем параграфе. Я откатил ваше редактирование. – simbabque
Первый и второй примеры работают в этом случае по-разному. Если 'start_home' получит два или более аргумента, первый пример отбросит их всех, но второй пройдет через них. Прохождение через '@ _' в первом примере явно показывает, что разница между примерами только при первом аргументе. –