使用Laravel 5与AngularJS刀片标签冲突

imp*_*335 11 php laravel angularjs blade laravel-5

我正在尝试使用Laravel 5设置Angular.

我试过在appServiceProvider中做:

public function boot()
{
    \Blade::setRawTags("[[", "]]");
    \Blade::setContentTags('<%', '%>'); // for variables and all things Blade
    \Blade::setEscapedContentTags('<%%', '%%>'); // for escaped data
}
Run Code Online (Sandbox Code Playgroud)

附:

<div>
  <input type="text" ng-model="yourName" placeholder="Enter a name here">
  <h1>Hello, {{ yourName }}!</h1>
</div>
Run Code Online (Sandbox Code Playgroud)

但是我得到了:

Use of undefined constant yourName - assumed 'yourName'...
Run Code Online (Sandbox Code Playgroud)

Pau*_*son 47

最简单的方法是在Angular代码前面使用@:

 <div>
  <input type="text" ng-model="yourName" placeholder="Enter a name here">
  <h1>Hello, @{{ yourName }}!</h1>
</div>
Run Code Online (Sandbox Code Playgroud)

资源


luk*_*ter 4

在进行与 Blade 相关的更改(扩展 Blade、更改标签等)时,请始终确保删除缓存的视图。

他们位于storage/framework/views.

只需删除所有文件(除了.gitignore

如果您想要更实用的东西,您可以创建一个命令来执行此操作。像这个