这可能是一个愚蠢的问题,因为我是Laravel的新手。我正在使用角度和laravel进行单页应用。我想从" todos"中获取所有记录。表格并在点击"查看所有Todos" todo.html时显示它们。按钮。 "查看所有Todos"转到" localhost:8000 / tasks" URL。当我点击那个按钮,我得到了所有的待机没问题。但是当我尝试直接在浏览器上访问该URL时,我从laravel Todocontroller获得了json数组。
这是我的路线/ web.php
Route::resource('/todo', 'TodoController');
Laravel TodoController控制器
public function index()
{
return Todo::all();
}
这是我的角度代码
myApp.config(['$routeProvider', '$locationProvider',
function ($routeProvider, $locationProvider) {
$locationProvider.hashPrefix('');
$routeProvider.when('/', {
templateUrl: 'views/home.html',
});
$routeProvider.when('/todo', {
templateUrl: 'views/todo.html',
controller: 'todoController'
});
$locationProvider.html5Mode(true);
}]);
myApp.controller('taskController', function($scope, $http) {
$http({
method: 'get',
url: 'todo'
}).then(function (response) {
$scope.about = response.data
},function (error){
console.log(error, 'can not get data.');
});
});
答案 0 :(得分:0)
您是否知道您还可以从您的路线或控制器返回Eloquent系列?它们将自动转换为JSON。试一试!
https://laravel.com/docs/5.5/responses
如果要返回html,请使用控制器中的视图
public function index()
{
return view('todos')->with('todos',Todo::all());
}
答案 1 :(得分:0)
您的角度控制器以及Laravel控制器的目标是相同的网址。您应该使用Laravel作为API或服务,而允许使用angular进行路由。检查这个以获取更多信息。 Laravel API routes