我目前正在嘗試構建一個運行閃存驅動器的「web應用程序」,因此不能有任何其他環境需要啓動chrome以及一些啓動選項以及閃存驅動器上index.html文件的路徑。使用AngularJS及其路徑提供程序的純本地單頁應用程序
我在使用file://協議加載文件時沒有通過網絡服務器來獲取angularJS時會遇到一些麻煩。
我已經通過將html5模式設置爲true來加載本地資源(如視頻),但我目前無法使用路由提供程序。
以下是我的: var testApp = angular.module(「testApp」,['angular-underscore',「ngRoute」,「com.2fdevs.videogular」]);
testApp.config(function($locationProvider, $routeProvider) {
$locationProvider.html5Mode(true);
$routeProvider.when('/', {template: '/views/MainView.html', controller: "VideoPlayerController" })
.otherwise({redirectTo:'/'});;
});
每當我通過雙擊該文件在Chrome中加載我的index.html文件時,URL以「file://」開頭。當我通過命令行啓動必需的選項「--allow-file-access-from-files」時,也會發生這種情況。
如何讓routeProvider按照預期的方式使用file://?目前,它是不承認甚至是「否則」路線,除非我加入的index.html
<base href="/index.html">
下我的頭標籤,但在結束了
file:///
在Chrome中的URL字段。所有其他資源無法加載。 下面是我看到只有一個控制器組合的錯誤示例。
GET file:///index.html net::ERR_FILE_NOT_FOUND
謝謝! (我知道如果我願意使用網絡服務器,我的所有問題都會消失,但目前我不允許在此項目中使用)
你是在Mac嗎? – Niall
我是。爲什麼?這有什麼不同嗎? :) – bobber205
角度文檔說「$路線用於深層鏈接網址」。 file:協議不是網址;沒有查詢字符串,碎片等,總之,它可能無法工作,而不修補角碼... – dandavis