动态更改angular-google-maps语言 [英] Change angular-google-maps language dynamically

查看:81
本文介绍了动态更改angular-google-maps语言的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

更改语言时是否可以动态更改地图语言? 或者至少在下次访问时(更改语言之后)更改了语言映射.

Is it possible to change map language dynamically when language is changed ? Or at least have the language map changed the next time I access it (after language is changed).

我可以使用以下代码(在mymap.module.ts中)在地图加载时设置默认语言:

I can set default language on map loading using this code (in mymap.module.ts) :

@NgModule({ imports: [ 
  AgmCoreModule.forRoot({ apiKey: 'MY_KEY',
  language: 'es', }),
  ]
})

然后我可以使用this.translate.currentLang(在mymap.component.ts中)获取当前语言.

And I can get the current language using this.translate.currentLang (in mymap.component.ts).

但是我不知道如何将两者结合起来.

But I don't know how I can combine both.

推荐答案

为了更改地图的语言,需要重新获取一堆本地化的JS脚本.因此,您可以尝试通过本地存储刷新提供所需语言的整个页面(JS不是Angular),例如:

In order to change map's language, a bunch of localized JS scripts need to be refetched anew. So, you can just try to refresh entire page (JS not Angular) providing wanted language via local storage for example:

@NgModule({ 
  imports: [ 
    AgmCoreModule.forRoot({ 
      apiKey: 'MY_KEY',
      language: localStorage && localStorage.gml || 'en'
    }),
  ]
})

要重新加载页面,请使用window.location.reload()方法

to reload your page, use window.location.reload() method

StackBLITZ: https://stackblitz.com/edit/angular-google-maps-demo-f3xzhn?file=app%2Fapp.module.ts

StackBLITZ: https://stackblitz.com/edit/angular-google-maps-demo-f3xzhn?file=app%2Fapp.module.ts

这篇关于动态更改angular-google-maps语言的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆