2017-01-31 89 views
0

我試圖運行angularjs 2應用程序dist文件作爲簡單的html頁面。即我只需雙擊dist文件夾中的index.html即可。但是,應用程序無法正常工作:錯誤:angularjs 2:SecurityError:無法執行

EXCEPTION: Uncaught (in promise): SecurityError: Failed to execute 'replaceState' on 'History': A history state object with URL 'file:///D:/' cannot be created in a document with origin 'null' and URL 'file:///D:/dev/ProxyVoting/ngapp/dist/index.html'.

+1

你不能只是點擊index.html,然後,除了它的工作。您的頁面需要一些強制性文件,如果不使用服務器(Apache,node.js,...)則無法訪問。 – mickdev

+0

@mickdev你可以描述頁面需要什麼類型的文件嗎?謝謝。 –

+0

有關Angular 2 App生產的更多詳細信息,請參閱此處:http://stackoverflow.com/a/38765929/7447071 – mickdev

回答

0

第一步:

運行命令

ng build 

ng build -prod (then it will compact all files for production version) 

第二步:

在變化中的index.html dist目錄

<base href="/"> to <base href="./"> 

第三步:

把所有文件到服務器(可以是本地主機或任​​何服務器的htdocs)

希望它會工作。

+0

無法使用此解決方案。 –

1

使用HTTP服務器而不是直接文件訪問。我面臨同樣的問題;所以,我用XAMPP &搞定了。

所以,你index.html將包含base href這樣的事情 - <base href="http://localhost:81/etl/">