相关疑难解决方法(0)

在Angular 2中定义全局常量

在Angular 1.x中,您可以像这样定义常量:

angular.module('mainApp.config', [])
.constant('API_ENDPOINT', 'http://127.0.0.1:6666/api/')
Run Code Online (Sandbox Code Playgroud)

Angular2(使用Typescript)中的等价物是什么?我只是不想在我的所有服务中一遍又一遍地重复API基本URL.

typescript angular

240
推荐指数
11
解决办法
25万
查看次数

将环境变量传递给Angular2应用程序?

我需要将后端URL传递给我的Angular2应用程序,因为生产和开发服务器托管在不同的位置.

我知道我可以在外部config.json中存储这些东西并在启动时加载.但是,在应用程序启动之前,这似乎是对服务器的不必要的额外调用.

或者,我现在做的是创建一个全局变量,我根据构建注入gulp.我的应用程序不是需要可重用的库我不相信我应该遇到意外的全球名称冲突.但这不是一个好习惯.

我想知道是否有第三个更好的解决方案?

environment angular

26
推荐指数
3
解决办法
3万
查看次数

如何访问angular2组件中的全局js变量

我有一个下面定义的全局js变量(@Url是一个ASP.Net MVC html帮助器,它将转换为字符串值):

<script>
  var rootVar = '@Url.Action("Index","Home",new { Area = ""}, null)';
  System.import('app').catch(function(err){ console.error(err); });
</script>
Run Code Online (Sandbox Code Playgroud)

如何在angular2组件中访问rootVar?我曾经在角度1.5中使用窗口服务,在angular2中有类似的方法吗?

具体来说,我想使用该rootVar变量来帮助生成此组件中的templateUrl:

import { Component, Inject} from '@angular/core';

@Component({
    selector: 'home-comp',
    templateUrl: '../Home/Root'
})

export class HomeComponent {   
    constructor( ) {  }
}
Run Code Online (Sandbox Code Playgroud)

typescript angular

12
推荐指数
4
解决办法
3万
查看次数

RC5升级后将服务器参数传递给ngModule

我正在再次尝试将参数传递给我的应用程序.从RC5开始,我必须使用ngModule.(此解决方案:自从RC5以来,将asp.net服务器参数传递给Angular 2应用程序不再有效)

如何将参数传递给ngModule?

这是一个说明问题的吸气者: Plunker

index.html的:

<script>
  System.import('app').then(module =>   module.main('This is RIGHT'),
                console.error.bind(console)
            );
</script>
Run Code Online (Sandbox Code Playgroud)

main.ts:

import { browserDynamicPlatform } from '@angular/platform-browser-dynamic';
import { provide } from '@angular/core';
import { AppModule } from './app.module';

export function main(test: string) {

  browserDynamicPlatform().bootstrapModule(AppModule, [{ providers: provide('Test', { useValue: test, }) }]);
}
Run Code Online (Sandbox Code Playgroud)

app.module.ts

import { NgModule, provide }       from '@angular/core';
import { BrowserModule }  from '@angular/platform-browser';
import { AppComponent }       from './app.component';

@NgModule({
  imports: [
    BrowserModule
  ],
  declarations: [ …
Run Code Online (Sandbox Code Playgroud)

angular

12
推荐指数
1
解决办法
6619
查看次数

是否可以将@Input值传递给Angular 2中的app.component?

我正在使用ASP.Net来渲染我的Angular 2应用程序,而我唯一的RAZOR页面是_Layout.cshtml,我希望能够将一些初始数据从RAZOR传递到我的自举组件中,但它不会似乎工作.

在我的_Layout.cshtml中,我有以下内容:

<my-app test="abc"></my-app>
Run Code Online (Sandbox Code Playgroud)

在我的app.component.ts中,我有:

import { Component, Input } from "@angular/core";

@Component({
    selector: 'my-app',
    template: "<div id='mainBody'>Test:{{test}}</div>",
    directives: [MenuBarComponent, ROUTER_DIRECTIVES]
})
export class AppComponent {
    @Input() test;
}
Run Code Online (Sandbox Code Playgroud)

我的测试变量是空白的.有没有不同的方法来做到这一点,还是只是不可能?

angular

10
推荐指数
1
解决办法
4048
查看次数

标签 统计

angular ×5

typescript ×2

environment ×1