Я пытаюсь настроить Angular с Laravel 5.
Я пробовал делать в appServiceProvider:
public function boot() { \Blade::setRawTags("[[", "]]"); \Blade::setContentTags('<%', '%>'); // for variables and all things Blade \Blade::setEscapedContentTags('<%%', '%%>'); // for escaped data }
С:
<div> <input type="text" ng-model="yourName" placeholder="Enter a name here"> <h1>Hello, {{ yourName }}!</h1> </div>
Но я получаю:
Use of undefined constant yourName - assumed 'yourName'...
При внесении изменений, связанных с Blade (расширение Blade, изменение тегов и т. Д.), Всегда удаляйте кешированные представления.
Они расположены в storage/framework/views
.
Просто удалите все файлы (кроме .gitignore
)
Если вы хотите что-то более практичное, вы можете создать команду для этого. Как этот
Самый простой способ сделать это – просто использовать @ перед вашим угловым кодом:
<div> <input type="text" ng-model="yourName" placeholder="Enter a name here"> <h1>Hello, @{{ yourName }}!</h1> </div>
источник
Пока добавление @ перед фигурными скобками все еще работает, Laravel также включил еще одну удобную утилиту для лезвий, которая позволяет вам отметить весь блок как есть:
@verbatim <div> {{ ctl.variable1 }} {{ ctl.variable2 }} </div> @endverbatim
Особенно полезно, если вы мало что делаете с визуализацией шаблона Blade
Еще вы измените угловой синтаксис …
var sampleApp = angular.module('sampleApp', [], function($interpolateProvider) { $interpolateProvider.startSymbol('<%'); $interpolateProvider.endSymbol('%>'); });