我有一个用Angular6编写的复杂计算器应用程序,该应用程序基于ngModelChange事件中的多个输入来计算结果,并直接在图表中显示这些结果。计算是在服务器端完成的。现在,我想添加一个反跳时间,这样服务器在按下每个键时都不会收到请求。
我在ngModelChange中触发的计算方法如下所示:
async calculate(){
if(this.checkInputs()){
try{
let returnDto = await this.webApiService.calculate(new CalculatorInputDto(this.model)).toPromise();
this.outputCalculate.emit(returnDto);
}
catch(e){
console.log(e);
}
}
Run Code Online (Sandbox Code Playgroud)
而我的服务方式:
calculate(dto: CalculatorInputDto): Observable<any> {
let url = this.baseUrl + "calculate";
return this.http.post(url, JSON.stringify(dto), this.options)
.pipe(
debounceTime(5000),
map((res => res.json())),
catchError(error => this.handleError(error))
);
}
Run Code Online (Sandbox Code Playgroud)
如您所见,我已经在我的服务中尝试了debounceTime(5000),但似乎没有任何改变。
有谁知道我该如何解决这个问题?
我有一个 Angular 应用程序,现在还需要它的桌面版本。我设法让它在电子中运行应用程序,一切都按预期工作。
但是本地化不起作用。在电子应用程序中,我只看到指向本地化文件中实际翻译的本地化键。
我主要是这样翻译 Angular 中的文本:
{{ "localization-key" | translate }}
Run Code Online (Sandbox Code Playgroud)
并且作为 json 文件的翻译基于assets/i18n/
有人知道如何进行本地化工作吗?