我有config.json文件,在那里,我已经对所有的urls和密钥进行了修改。有一个名为"googleMapsApiKey“的参数,其中有我的"map键”。我想提供这个密钥到我的模块文件,以便我可以使用谷歌地图,但我无法提供它。下面是我的密码。
config.json
{
"googleMapsApiKey": "MY KEY",
}MobileContentModule.ts
import { ConfigService } from '../../../HiP-CmsAngularApp/app/config.service';
@NgModule({
imports: [
AgmCoreModule.forRoot({
apiKey: 'WANT TO PROVIDE THAT KEY HERE', ---> from config.json
libraries: ['places']
}),
CommonModule,
FormsModule,有一个名为ConfigService的服务,我在这里访问config.json文件。我在MobileContentModule.ts文件中导入了这个服务。
有人能帮我从config.json文件中获取google密钥吗?这样做的目的是,我们不想在github上公开这个密钥。
发布于 2018-06-15 14:21:12
将其导入您的文件,如下所示:
import data from './config.json';
[...]
AgmCoreModule.forRoot({
apiKey: data.googleMapsApiKey
libraries: ['places']
}),[...]但TypeScript 2+会抱怨Cannot find module 'config.json'。然后,您必须使用通配符声明,如
declare module "json!*" {
const value: any;
export default value;
}(见https://www.typescriptlang.org/docs/handbook/modules.html#wildcard-module-declarations)
发布于 2019-12-19 10:29:24
在角6.1+中:
app.module.ts
import * as fromConfig from 'config.json';
@NgModule({
imports: [
AgmCoreModule.forRoot({
apiKey: fromConfig.googleJSAPIKey,
libraries: ['places'],
}),]
})tsconfig.json:
{
"compilerOptions": {
"resolveJsonModule": true,
"esModuleInterop": true
}
}https://stackoverflow.com/questions/50877147
复制相似问题