如何使用angular2从appsettings.json读取typescript文件的值?

时间:2017-06-13 15:54:41

标签: angular typescript

我目前正在使用angular 2.我有这样的appsettings.json文件。

"Dummies": {
  "Neck": "test,test1",
}

如何在打字稿文件中读取Neck的值?

2 个答案:

答案 0 :(得分:1)

除了Antoine Guittet's suggestion之外,另一种简单的方法是使用require,如下所示。

// import data from json file...
const data= require("path/to/your.json"); 

//... and then use it as regular object.
console.log(data);
console.log(data.Dummies.Neck);

我假设json文件如下:

{
    "Dummies": {
        "Neck": "test,test1"
    }
}

答案 1 :(得分:1)

实现一个服务器端API控制器,该控制器仅从appsettings.json中注入所需的配置,并让Angular客户端在ngOnInit()中向服务器查询该信息。如果这是MVC应用程序,请使用IConfiguration。不要直接引用appsettings.json。

Require作品,将其用于appsettings.json是一个非常糟糕的主意。

基本上在构建时,您将捆绑appsettings.json的全部内容,包括您从该文件中不需要的所有垃圾,更糟糕的是,所有连接字符串,凭据,后门密码和您所拥有的秘密东西不想离开,并将它们包含在最终的main-client.js输出中。即使您现在那里没有任何敏感信息,其他人也会稍后出现,并在不知不觉中损害您的安全性,因为通常我们认为appsettings.json可得到最终用户的安全保护。在这里,使用require不仅不计后果,而且还可以有效地将配置硬编码到产品中。那可能不是您想要的。