在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.
显然,Angular 2将使用管道而不是Angular1中的过滤器以及ng-for来过滤结果,尽管实现似乎仍然模糊,没有明确的文档.
也就是说,我想要实现的目标可以从以下角度来看待
<div *ng-for="#item of itemsList" *ng-if="conditon(item)"></div>
Run Code Online (Sandbox Code Playgroud)
如何使用管道实现?
我最近开始看到 TSLint 错误。它们看起来像这样:
不使用为“/Users/myname/myproject/client/src/app/likes/likee/likee.component.ts”找到的本地 TSLint 版本。要从当前工作区启用代码执行,您必须启用工作区库执行。
当我打开它们时,我在我的 .ts 文件中看到它们,它在每个 .ts 页面的第一行显示一条黄色波浪线。
我在TSLint网站上看到它说它已被弃用。
问题 1 - 这些错误的原因是什么,为什么我会突然看到它们?
问题 2 - 我应该卸载 Visual Studio Code TSLint 扩展并安装 ESLint 扩展吗?
如何有条件地添加元素属性,例如checked复选框?
以前版本的Angular已经NgAttr和我认为NgChecked哪些似乎都提供了我所追求的功能.但是,Angular 2中似乎不存在这些属性,我看不到提供此功能的其他方法.
当我尝试在角度cli中创建一个组件时,它向我显示了这个错误.我怎么摆脱它?
错误:多个模块匹配.使用skip-import选项跳过将组件导入最近的模块.
我正在使用angular cli版本:1.4.1
我试图在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
我在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
如何解决这个问题.谢谢
只有在输入焦点发生变化后才会调用change事件.我怎样才能使事件在每个按键上触发?
<input type="text" [(ngModel)]="mymodel" (change)="valuechange($event)" />
{{mymodel}}
Run Code Online (Sandbox Code Playgroud)
第二个绑定在每个按键btw上发生变化.
我正在使用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)
我想知道使用哪一个来构建模拟Web服务来测试Angular程序?
angular ×10
typescript ×2
angular-pipe ×1
date ×1
date-pipe ×1
eslint ×1
eventemitter ×1
javascript ×1
observable ×1
tslint ×1