JavaScript/Angular中的属性文件

JavaScript/Angular中的属性文件,javascript,Javascript,在Java中,我通常在我的资源文件夹中创建application.properties,并将配置放在其中 当我需要它时,我只做Properties=newproperties();加载(…我的文件)然后使用prop.getProperty(“某物”) 我想用Javascript做一些类似的事情 在我的js代码中,我有以下内容: // REST API Base URL var baseUrl = "http://localhost:8083/api"; 我希望它位于application.pr

在Java中,我通常在我的资源文件夹中创建
application.properties
,并将配置放在其中

当我需要它时,我只做
Properties=newproperties();加载(…我的文件)
然后使用
prop.getProperty(“某物”)

我想用Javascript做一些类似的事情

在我的js代码中,我有以下内容:

// REST API Base URL
var baseUrl = "http://localhost:8083/api";
我希望它位于application.properties文件中,然后加载该值

我怎样才能做到这一点


感谢angular 2+项目中的

,对于一个良好的实践,您应该为每个环境创建一个文件,如:environment.js、environment.prod.js

在文件中,您可以导出一个常量或默认情况下类似的值

export const environment = {
  apiUrl: '',
  googleApiKey: '',
}
您可以在需要的每个文件中导入此环境,如

import { environment } from '{relativePath}/environment/environment.js'
如果您为每个env(如prod)创建不同的文件,则需要为将要生成的env替换environment.js。您可以通过webpack或其他编译器获得大量关于此的信息

我强烈建议您开发一个common.js项目。这将是更友好的为您导入模块,您将有强大的可能性,可扩展的应用程序

但简单(丑陋)的解决方案是:

index.html

<head>
  <script src="environment.js">
  <script src="app.js">
</head>
app.js

function example(){
  console.log(window.environment.apiUrl); // out https://api.url:4100
}

方法取决于如何构建和/或捆绑AngularJs应用程序。但不管怎样,您都需要创建一个config.json文件来包含您的设置。 如果使用browserify或webpack,您可以通过require(…)导入该文件,否则您只需在应用程序引导之前通过ajax请求即可

在上述任何情况下,在整个应用程序中使用配置数据的最佳方法是在引导阶段将其定义为常量:
app.constant('CONFIG',configData),假设configData是包含config.json文件中数据的变量


然后,您可以使用依赖项注入为所有控制器、服务和指令提供配置。

创建一个文件constants.js。把你想用的每一个环境变量都放进去,让它成为你的应用程序包含的第一个文件。你能更具体一点吗?在JS中做了一个应用程序之后,我开始患上parkisson综合征——想想你有constants.java,你在其中保存了全局变量。同样的观念。除了js文件,您需要将它们包含到html中,对吗?因此,请确保该文件是html代码中包含的第一个文件。它是angularJS sorryWell此解决方案不是angular2+限制只是javascriptI我可以看出您在这里谈论的是两个不同的东西,第一个在内置循环中使用,而第二个更像是存储在全局对象中的api,可以在重新加载页面之前进行更改。
function example(){
  console.log(window.environment.apiUrl); // out https://api.url:4100
}