[英]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.