AngularJs和Laravel的Pretty Urls不起作用
Pretty Urls in AngularJs and Laravel not working
我正在使用Laravel和AngularJS开发一个应用程序。对于AngularJS漂亮的URL,我设置了$locationProvider.html5Mode(true),它运行良好。但假设我的网址是http://localhost:8000/demo如果我刷新页面,我会在compiled.php的7693:行中得到NotFoundHttpException
这是我的angular路线。
function($routeProvider,$locationProvider) {
$locationProvider.html5Mode(true);
$routeProvider.
when('/', {
templateUrl: 'partials/index.html',
controller: 'indexController'
}).
when('/dom',{
templateUrl:'partials/dom.html',
controller:'DomController'
}).
when('/demo',{
templateUrl:'partials/demo.html',
controller:'DemoController'
});
}]);
这是我的拉拉威尔路线。
Route::get('/', function(){
return view('index');
});
我很感激你的帮助。谢谢
这里的问题是web服务器将http://localhost:8000/demo刷新页面时,并尝试处理请求。它不知道您希望使用html5路由。所以它会解析请求,说"哦,我应该把它传递给public/index.php
,然后处理它"。然后public/index.php
将接收到它并抛出一个错误,因为该路由在Laravel中不存在。
你需要做的是在Laravel中创建一个包罗万象的路由,然后让Angular的路由接管。然后,您将在每个请求上呈现索引视图。关于如何在Laravel 5中做到这一点,SO上有一个很好的答案:我如何在Laravil 5中捕捉异常/缺失页面?
这是伪代码,将不起作用,只是为了显示一个示例:
Route::get('*', function() {
return view('index');
});
因此,在每个请求上呈现索引视图,然后让Angular从那里处理路由。
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 监视函数从服务返回不起作用,但作用域函数起作用
- 幻灯片滚动javascript不起作用
- 简单的javascript在Shopify中不起作用
- Recaptcha在IE7和IE8中不起作用
- Ember Data DS.Model's set函数不起作用
- JsFiddle上的鼠标事件不起作用
- 我的AngularJS表达式没有'不起作用
- 点击按钮输入不起作用
- 面向对象的Javascript代码在IE7中不起作用
- 分部隐藏在jquery中不起作用
- 在phonegap应用程序内部重定向不起作用
- Array.length似乎不起作用;console.log则显示其他情况
- $ionicplatform内的$scope不;不起作用
- 我的javascript for循环不起作用
- Meteor-添加用户自定义字段的方法不起作用
- 为什么 .focus() 不起作用,而 .css(“color”,“red”) 在同一个选择器上起作用
- Textarea必需的attribut在javascript中不起作用
- 为什么javascript:void(0)在Firefox中不起作用
- AngularJs和Laravel的Pretty Urls不起作用