覆盖 Laravel 5 个分隔符

Overriding Laravel 5 delimiters

我在我的应用程序中使用 AngularJS 和 Laravel。面临的问题是它们都使用相同的定界符。

我想覆盖 Laravel 的分隔符。

将这些行添加到 AppServiceProvider@register:

Blade::setEscapedContentTags('[[', ']]'); 
Blade::setContentTags('[!!', '!!]');. 

在此之后,您将能够像这样在模板中使用变量:

[[ $phpVar ]]    // PHP
{{ angularVar }} // AngularJS

要添加到 limonte 的答案中,您可以在任何使用车把的 angular 语句的开头添加 @,这样 blade 就不会碰到它,这可以是如果您不想完全更换车把,这是一个很好的解决方法。

示例:

@{{ $scope.var }} // won't be read by blade!

有关详细信息,请参阅文档:http://laravel.com/docs/5.0/templates