标签: angular

在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万
查看次数

如何将过滤器应用于*ngFor?

显然,Angular 2将使用管道而不是Angular1中的过滤器以及ng-for来过滤结果,尽管实现似乎仍然模糊,没有明确的文档.

也就是说,我想要实现的目标可以从以下角度来看待

<div *ng-for="#item of itemsList" *ng-if="conditon(item)"></div>
Run Code Online (Sandbox Code Playgroud)

如何使用管道实现?

typescript angular

237
推荐指数
12
解决办法
30万
查看次数

在 Visual Studio Code 中运行的 Angular 应用程序中,TSLint 扩展抛出错误

我最近开始看到 TSLint 错误。它们看起来像这样:

不使用为“/Users/myname/myproject/client/src/app/likes/likee/likee.component.ts”找到的本地 TSLint 版本。要从当前工作区启用代码执行,您必须启用工作区库执行。

当我打开它们时,我在我的 .ts 文件中看到它们,它在每个 .ts 页面的第一行显示一条黄色波浪线。

我在TSLint网站上看到它说它已被弃用。

问题 1 - 这些错误的原因是什么,为什么我会突然看到它们?

问题 2 - 我应该卸载 Visual Studio Code TSLint 扩展并安装 ESLint 扩展吗?

eslint tslint visual-studio-code vscode-extensions angular

235
推荐指数
7
解决办法
7万
查看次数

如何在Angular 2中添加条件属性?

如何有条件地添加元素属性,例如checked复选框?

以前版本的Angular已经NgAttr和我认为NgChecked哪些似乎都提供了我所追求的功能.但是,Angular 2中似乎不存在这些属性,我看不到提供此功能的其他方法.

javascript angular

234
推荐指数
6
解决办法
16万
查看次数

错误:多个模块匹配.使用skip-import选项跳过将组件导入最近的模块

当我尝试在角度cli中创建一个组件时,它向我显示了这个错误.我怎么摆脱它?

错误:多个模块匹配.使用skip-import选项跳过将组件导入最近的模块.

我正在使用angular cli版本:1.4.1

angular

233
推荐指数
12
解决办法
19万
查看次数

委托:Angular中的EventEmitter或Observable

我试图在Angular中实现类似委托模式的东西.当用户点击a时nav-item,我想调用一个函数然后发出一个事件,而该事件又由一些其他组件监听事件来处理.

这是场景:我有一个Navigation组件:

import {Component, Output, EventEmitter} from 'angular2/core';

@Component({
    // other properties left out for brevity
    events : ['navchange'], 
    template:`
      <div class="nav-item" (click)="selectedNavItem(1)"></div>
    `
})

export class Navigation {

    @Output() navchange: EventEmitter<number> = new EventEmitter();

    selectedNavItem(item: number) {
        console.log('selected nav item ' + item);
        this.navchange.emit(item)
    }

}
Run Code Online (Sandbox Code Playgroud)

这是观察组件:

export class ObservingComponent {

  // How do I observe the event ? 
  // <----------Observe/Register Event ?-------->

  public selectedNavItem(item: number) {
    console.log('item index changed!');
  }

}
Run Code Online (Sandbox Code Playgroud)

关键问题是,如何让观察组件观察相关事件?

event-delegation observable observer-pattern eventemitter angular

231
推荐指数
2
解决办法
12万
查看次数

Angular 4:没有找到组件工厂,你是否将它添加到@ NgModule.entryComponents?

我在webpack中使用Angular 4模板,当我尝试使用组件时会出现此错误(ConfirmComponent):

找不到ConfirmComponent的组件工厂.你有没有把它添加到@ NgModule.entryComponents?

组件在app.module.server.ts中声明

@NgModule({
  bootstrap: [ AppComponent ],
  imports: [
    // ...
  ],
  entryComponents: [
    ConfirmComponent,
  ],
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)

我还有app.module.browser.ts和app.module.shared.ts

如何解决这个问题.谢谢

angular angular-webpack-starter

231
推荐指数
13
解决办法
23万
查看次数

每个按键上的Angular 2更改事件

只有在输入焦点发生变化后才会调用change事件.我怎样才能使事件在每个按键上触发?

<input type="text" [(ngModel)]="mymodel" (change)="valuechange($event)" />
{{mymodel}}
Run Code Online (Sandbox Code Playgroud)

第二个绑定在每个按键btw上发生变化.

angular

230
推荐指数
9
解决办法
35万
查看次数

使用管道格式化日期为dd/MM/yyyy

我正在使用date管道格式化我的日期,但我无法获得我想要的确切格式而无需解决方法.我是错误地理解管道还是不可能?

//our root app component
import {Component} from 'angular2/core'

@Component({
  selector: 'my-app',
  providers: [],
  template: `
    <div>
      <h2>Hello {{name}}</h2>
      <h3>{{date | date: 'ddMMyyyy'}}, should be 
      {{date | date: 'dd'}}/{{date | date:'MM'}}/{{date | date: 'yyyy'}}</h3>

    </div>
  `,
  directives: []
})
export class App {
  constructor() {
    this.name = 'Angular2'
    this.date = new Date();
  }
}
Run Code Online (Sandbox Code Playgroud)

plnkr视图

date angular-pipe date-pipe angular

224
推荐指数
12
解决办法
46万
查看次数

角度4中的HTTP和HTTPClient之间的区别?

我想知道使用哪一个来构建模拟Web服务来测试Angular程序?

angular2-http angular angular-httpclient

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