NAME
Mojolicious::Plugin::AutoReload - Automatically reload open browser windows when your application changes
VERSION
version 0.010
SYNOPSIS
use Mojolicious::Lite;
plugin AutoReload => {};
get '/' => 'index';
app->start;
__DATA__
@@ index.html.ep
Hello world!
DESCRIPTION
This plugin automatically reloades the page when the Mojolicious webapp restarts. This is especially useful when using the Morbo development server, which automatically restarts the webapp when it detects changes. Combined, morbo
and Mojolicious::Plugin::AutoReload
will automatically display your new content whenever you change your webapp in your editor!
This works by opening a WebSocket connection to a specific Mojolicious route. When the server restarts, the WebSocket is disconnected, which triggers a reload of the page.
The AutoReload plugin will automatically add a <script>
tag to your HTML pages while running in development
mode. If you need to control where this script tag is written, use the "auto_reload" helper.
To disable the plugin for a single page, set the plugin.auto_reload.disable
stash value to a true value:
get '/' => sub {
my ( $c ) = @_;
# Don't auto-reload the home page
$c->stash( 'plugin.auto_reload.disable' => 1 );
...
};
HELPERS
auto_reload
The auto_reload
template helper inserts the JavaScript to automatically reload the page. This helper only works when the application mode is development
, so you can leave this in all the time and have it only appear during local development.
This is only needed if you want to control where the <script>
for automatically-reloading is rendered.
ROUTES
/auto_reload
This plugin adds a /auto_reload
WebSocket route to your application.
SEE ALSO
THANKS
Thanks to Grant Street Group for funding continued development of this plugin!
AUTHOR
Doug Bell <preaction@cpan.org>
CONTRIBUTORS
Robert DeRose <RobertDeRose@users.noreply.github.com>
Zeeshan Muhammad <zeeshan@dkhr.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2018 by Doug Bell.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.