簡體   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