我创建了一个GUI,用于从远程服务器检索数据。现在我想尝试将这个GUI的设置保存到一个配置文件中,以便可以更改文件设置。
我不知道如何在Angular2中创建一个配置文件。我试着查找关于如何创建和使用配置文件的链接,但我发现它适用于Java和C#。它存在于Angular2吗?
您可以为此使用JSON配置文件,并使用HTTP加载它。在这种情况下,您可以异步引导应用程序以等待加载此配置数据。这是一个示例:
let appProviders = [ HTTP_PROVIDERS, ConfigurationService ];
var app = platform(BROWSER_PROVIDERS)
.application([BROWSER_APP_PROVIDERS, appProviders]);
let service = app.injector.get(ConfigurationService);
service.getConfiguration().flatMap((configuration) => {
var configurationProvider = new Provider('configuration', { useValue: configuration });
return app.bootstrap(AppComponent, [ configurationProvider ]);
}).toPromise();
ConfigurationService
类可能是这样的:
@Injectable()
export class ConfigurationService {
constructor(private http:Http) {
}
getConfiguration() {
return this.http.get('config.json').map(res => res.json());
}
}
有关更多详细信息,请参阅此问题:
- angular2引导程序,使用来自ajax调用的数据
您不能在Angular中创建文件。浏览器中的角度管路和浏览器限制对本地文件系统的访问。
您想要的是将数据发送到服务器,以便服务器为客户端创建文件。
当您想要编辑GUI配置时,您只有两个选择:
-
将设置存储在服务器端,并提供检索和保存机制,即:在PUT上存储更改并在GET上检索配置的/settings REST端点。
-
存储在客户端,使用localStorage或IndexedDB。这种方法的明显缺点是,设置将在创建它的机器/浏览器中被隔离。如果用户从其他设备登录,则不可访问。