AngularJS:绝对与相对路径

时间:2015-05-15 17:48:21

标签: javascript angularjs frontend relative-path absolute-path

我正在启动一个AngularJS应用程序,我需要在生产模式下使用绝对路径调用我的静态文件,并在开发中使用相对路径。

例如,如果我需要访问JS静态文件夹,在生产中我需要调用:https://statics.domain.com/js并且在开发中我将有一个常规的assets/js文件夹。

对此有最佳方法吗?

谢谢!

编辑:重要提示是此应用与后端分开。

2 个答案:

答案 0 :(得分:2)

您可以使用基本标记(https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base)为所有相对网址设置基本路径。

所以你可以在开发中将基础href更改为生产中的static.domain.com。

然而,基本标签有点模糊,我不推荐它用于认真的工作。

其他想法:

您是否可以使用您的hosts文件将static.testdomain.com重定向到您的本地环境。

您是否可以使用环境变量或其他配置设置来更改javascript引用。

答案 1 :(得分:0)

最好的方法是让您的服务器根据环境(生产与开发)提供不同的index.html文件。如果您现在不使用服务器,可以考虑使用轻量级NodeJS服务器。

你甚至可以使用模板引擎(ex Express + Jade)并在环境中以不同的方式构建相同的index.html文件。