【问题标题】:add base url to angular app将基本网址添加到角度应用程序
【发布时间】:2017-12-18 15:40:06
【问题描述】:

我从角度开始。 我制作了我的第一个应用程序,并尝试定义一个基本 url,但我无法完成它。

我看过一些帖子说使用这个:

import {APP_BASE_HREF} from '@angular/common';

@NgModule({
 ...
  providers: [{provide:APP_BASE_HREF,useValue:'/my/app'}],
 ...
})
export class AppModule { }

这看起来很简单,但行不通。

我使用 Angular-cli 创建应用程序,然后将此行添加到 app.module.ts。然后运行 ​​ng serve 但没有任何反应。在 localhost:4200 上运行的应用程序

【问题讨论】:

  • 你说它不起作用是什么意思?当您提供值 (useValue) 时,您将值分配给全局变量 APP_BASE_HREF - 如果您在 app.component 中使用 console.log(APP_BASE_HREF);,您会得到什么?

标签: angular angular-cli


【解决方案1】:

Provider 用于服务的 DI。 如果你想使用像 URL 这样的静态值,你可以:

  1. 环境变量

在您的环境文件夹中,您可以在每个环境文件中添加新值。

 export const environment = {
  production: false,
  APP_BASE_HREF : '/my/app'
 };

然后你可以在任何地方使用它导入它

import { environment } from 'environments/environment'

它允许您根据您的环境设置多个变量值。

 ng serve --env=prod
  1. 常量设置

如果您只想要每个环境的静态值,您可以创建一个设置文件。

 export const SERVICESETTINGS = {
     USER_URL : '/api/user',  
 }

那么你只需要在你的类中导入

import  { SERVICESETTINGS } from 'app/configs/serviceSettings';

【讨论】:

    猜你喜欢
    • 2022-01-08
    • 2016-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多