繁体   English   中英

Angular UI路由器请求URL

[英]Angular UI router request URL

我有一个使用UI Router的Angular APP。

.config(function($stateProvider) {

    $stateProvider
        .state('blog', {
            url: '/blog',
            templateUrl: 'assets/javascript/blog/blog.html',
            controller: 'BlogCtrl',
            controllerAs: 'vm'
        })
});

如果我按下带有ui-sref="blog"的链接,则该应用程序将加载博客视图,但是如果我在新标签myapp / blog中打开,则会引发404错误。

PS。 我正在使用HTML5模式删除/#/

更新:

我在app.js中使用的每条路线都有单独的文件

.config(function($stateProvider, $urlRouterProvider, $locationProvider) {

    $urlRouterProvider.otherwise('home');
    $locationProvider.html5Mode(true);
});

并在<head />包含<base href="/"> <head />

我做错了吗? 有人可以解释一下吗?

要使此功能在刷新/重新加载上起作用,您需要在根目录中正确设置一个.htaccess文件或类似文件并启用重写引擎。

这样的事情应该起作用。

RewriteEngine On  
# If an existing asset or directory is requested go to it as it is
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
RewriteRule ^ - [L]

# If the requested resource doesn't exist, use index.html
RewriteRule ^ /index.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM