javascript — AngularJS получает параметры от Laravel

Я не знаю, как передать переменную из home.blade.php Ларавела моему Controller.js AngularJS.

Laravel:

У меня есть home.blade.php с переменной searchid:

@extends('layouts.default')
@section('content')
<div class="row" ng-app="app">
{{ $searchid }}
<post-controller></post-controller>
</div>
@stop

Эта переменная отправляется контроллером Laravel:

class SearchController extends BaseController {

public function makeSearch($searchid)
{
return View::make('pages.search')->with('searchid', $searchid);
}
}

ANGULARJS:

Мне нужно передать эту переменную в AngularJS контроллер.

У меня есть файл директивы, как это:

app.directive('postController', function()
{
return {
restrict: 'E',
templateUrl: 'templates/search.html'
}
});

И файл контроллера вот так:

app.controller('SearchController', ['$scope', function($scope, $routeParams)
{
console.log($routeParams.search);
$scope.param = $routeParams.search;
}]);

Я не знаю, как передать эту переменную поиск на мой controller.js.

0

Решение

Есть хороший пакет, который сделает почти всю работу за вас. PHP-Варс-To-Js-трансформатор

Однако основным принципом является просто передача переменных в javascript путем создания <script> тег в вашем представлении и определение переменных JavaScript. Вот пример:

<script type="text/javascript">
var searchId = {{ $searchId }};
</script>

Внимание в зависимости от типа данных вашей переменной вам придется использовать кавычки вокруг нее или даже сериализовать ее с помощью json.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]