diff --git a/src/ZiggyServiceProvider.php b/src/ZiggyServiceProvider.php index dd7496a9..18e6ea76 100644 --- a/src/ZiggyServiceProvider.php +++ b/src/ZiggyServiceProvider.php @@ -18,9 +18,13 @@ public function boot() return Macro::whitelist($this, $group); }); - $this->app['blade.compiler']->directive('routes', function ($group) { - return "generate({$group}); ?>"; - }); + if ($this->app->resolved('blade.compiler')) { + $this->registerDirective($this->app['blade.compiler']); + } else { + $this->app->afterResolving('blade.compiler', function (BladeCompiler $bladeCompiler) { + $this->registerDirective($bladeCompiler); + }); + } if ($this->app->runningInConsole()) { $this->commands([ @@ -28,4 +32,11 @@ public function boot() ]); } } + + protected function registerDirective(BladeCompiler $bladeCompiler) + { + $bladeCompiler->directive('routes', function ($group) { + return "generate({$group}); ?>"; + }); + } }