Laravel和AngularJs SPA访问直接URL时出错

这可能是一个愚蠢的问题,因为我是Laravel的新手。我正在使用angular和laravel来制作单页应用程序。我试图从“todos”表中获取所有记录,并将它们显示在todo.html上点击“查看所有待办事项”按钮。 “查看所有Todos”转到“localhost:8000/tasks”URL。当我点击那个按钮时,我得到了所有的待办事项没有问题。但是当我尝试直接在浏览器上访问该URL时,我从laravel Todocontroller获得了json数组。Laravel和AngularJs SPA访问直接URL时出错

这里是我的路线/ 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.');

});

});

回答:

你知道你还可以返回雄辩集合从你的路线或控制器?他们将自动转换为JSON。试一试!

https://laravel.com/docs/5.5/responses

如果你想返回HTML,在你的控制器

public function index() 

{

return view('todos')->with('todos',Todo::all());

}

https://laravel.com/docs/5.5/views

回答:

您从您的角度控制器,以及你的Laravel控制器针对同一网址中使用的视图。您应该使用Laravel作为API或服务,而您允许角度做路由。检查这个更多的信息。 Laravel API routes

以上是 Laravel和AngularJs SPA访问直接URL时出错 的全部内容, 来源链接: utcz.com/qa/265057.html

回到顶部