How can I use Angular 2 in production without webserver and just the filesystem? I can't use a webserver because of the corporate policies (that was not a problem with Angular because I could use the filesystem).
1 Answer
If you don't need network, Angular (version 2 and higher) applications work with no problems over the file:/ protocol. But you must set a correct base href path in your index.html. If you are using Angular CLI, you can build the app using the following command:
ng build --base-href=/path/to/your/application/dist/
and then opening the file:///path/to/your/application/dist/index.html in your browser.
4 Comments
Nono RAM
Thank you for your answer. I have the following error when using your command : "Cannot read property 'config' of null". Also I don't have a "dist" folder, just a src and a src/app folder...
Ján Halaša
I don't know what could cause the problem with a null reference. The
dist folder should be created when you run the ng build command and it will contain the built application.Nono RAM
I tried to clone another project and used the ng build then opened the index.html file in the dist folder and it worked perfectly :) ! Thanks for you help Ján!
Ján Halaša
That's good to hear. You may also want to use the HashLocationStrategy so when you reload the page in a browser, it still loads the application (index.html): angular.io/docs/ts/latest/guide/router.html#!#location-strategy
file:///protocol