有谁为什么这个代码(从主题初始化一个值)不起作用?有没有错误或设计?我究竟做错了什么?
TS
import { Component, OnInit } from '@angular/core';
import { Subject } from "rxjs";
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.styl']
})
export class AppComponent implements OnInit {
itemSupplier$: Subject<any[]> = new Subject<any[]>();
items: any[] = [
{name: 'Item 1', value: 'item1'},
{name: 'Item 2', value: 'item2'},
];
ngOnInit(){
this.itemSupplier$.next(this.items);
}
}
Run Code Online (Sandbox Code Playgroud)
HTML
<ul>
<li *ngFor="let item of itemSupplier$ | async">{{item.name}}</li>
</ul>
Run Code Online (Sandbox Code Playgroud) 为了避免内存泄漏,我如何专门检查 Angular 应用程序是否存在垃圾 Observable(那些尚未取消订阅的对象)?
我已将Angular 4服务从旧的Http迁移到新的HttpClient.返回纯零0作为响应的请求正在返回一个observable null.
请求:
return this.httpClient.get(url, options)
.do(res => console.log('service returns', res)) as Observable<number>;
Run Code Online (Sandbox Code Playgroud)
将控制台日志null,但当我在devtools>网络中打开该请求时,我看到服务器响应0.
我究竟做错了什么?
我的Angular指令之一中包含以下代码:
@HostListener('paste', ['$event'])
onPaste($event: ClipboardEvent) {
setTimeout(() => {
const input = (<HTMLInputElement>$event.target);
input.value = input.value.replace(/\D/g, '');
});
}
Run Code Online (Sandbox Code Playgroud)
它在IE11中失败,并显示错误消息ClipboardEvent is undefined。幸运的是,我可以将其键入到just Event,但是我想知道为什么它会中断-我可以在angular-cli.json中添加任何可使其使用的库ClipboardEvent吗?
"lib": [
"es2017",
"dom"
],
Run Code Online (Sandbox Code Playgroud)
“ dom”是Event从哪里来的...
在 VSCode 中,我有一个非常小的项目,安装了 vite 和 vitest。使用 vitest,与 jasmine 或 jest 不同,您需要显式导入describe、it等符号expect。
不幸的是,VS Code 甚至不提供自动导入 ( cmd+ .):
如果重要的话,我安装了 Vitest 扩展(VSCode 不是我的主要 IDE,所以我可能会丢失一些东西)。
如何配置我的环境以便轻松导入这些函数?
我正在尝试将 JavaScript 代码转换为 TypeScript (1.8.9),我想知道声明或转换附加到事件的数据的正确方法是什么。
self.onmessage = function(e: Event){
if(e.data.schedules) processSchedules(e.data.schedules)
};
Run Code Online (Sandbox Code Playgroud)
该data部分被 PHPStorm 标记为红色。我应该将其投射到某个接口还是any为了消除 TS 错误?
我遇到了 Angular 2 和 ngrx/store 的特定代码状态,我的应用程序完全中断(路由不工作,数据不出现,路由回到前一个,以及所有其他类型的可能的灾难),但我快用完了关于如何调试商店周围发生的事情的想法。redux dev-tools 是一个很棒的工具,但它似乎无法捕获错误。
我.catch在我的选择器、效果和.subscribe()语句之前放置了语句,尝试了两种变体:
return state$.select(state => state.user)
.map(user => user.collection)
.catch((error, caught) => {
console.log('error getCollection');
return caught;
});
Run Code Online (Sandbox Code Playgroud)
和
return state$.select(state => state.user)
.map(user => user.collection)
.catch((error) => {
console.log('error getCollection');
return Observable.throw(error);
});
Run Code Online (Sandbox Code Playgroud)
控制台仍然保持沉默。我只是不相信除了商店之外不会有任何其他“单一的错误来源”。
此代码不会为我捕获错误。应该是?:
.do(() => {
Observable.throw('fake error');
})
.catch(error => {
console.error(error);
return Observable.throw(error);
});
Run Code Online (Sandbox Code Playgroud)
谁能告诉我如何调试整个商店使用的可观察对象?
我正在尝试将Commerce产品类型绑定到我自己的自定义类型节点(用作显示节点).目标是在尽可能少的地方输入新数据.因此,我正在探索基于规则的创建另一种类型的创建.似乎两个方向都有效.在这两者中,我更喜欢在用户创建自定义类型节点时自动创建Commerce产品,然后该节点将用作产品显示.
我想知道是否有人通过这个选择并且可以推荐这个.此外,commerce_product_display_manager模块是否必要?
我正在开发一个利用 ao Bootstrap carousel (3.0) 和touchSwipe plugin的应用程序。我想为触摸屏添加滑动功能以在幻灯片之间切换。我设法达到了在桌面模式下可以滑动的状态,但如果我在 chrome DevTools 中打开模拟模式,则无法滑动。Chrome 设置为以 --touch-events=enabled 标志开头,但它也没有帮助。
该页面已正确设置元视口。
对可能缺少什么有什么想法吗?
ng -v:1.0.0-beta.32.3
"devDependencies": {
"@angular/compiler-cli": "2.4.4",
"@types/jasmine": "^2.5.38",
"@types/node": "^6.0.42",
"codelyzer": "~2.0.0-beta.4",
"jasmine-core": "^2.5.2",
"jasmine-spec-reporter": "^3.2.0",
"karma": "^1.4.1",
"karma-cli": "^1.0.1",
"karma-jasmine": "^1.1.0",
"karma-phantomjs-launcher": "^1.0.2",
"karma-remap-istanbul": "^0.6.0",
"protractor": "^4.0.13",
"ts-node": "~2.0.0",
"tslint": "^4.4.2",
"typescript": "~2.0.3"
}
Run Code Online (Sandbox Code Playgroud)
/tslint.json
{
"rulesDirectory": [
"node_modules/codelyzer"
],
"rules": {
"class-name": true,
"comment-format": [
true,
"check-space"
],
"curly": true,
"eofline": true,
"forin": true,
"indent": [
true,
"spaces"
],
"label-position": true,
"max-line-length": [
false,
140
],
"member-access": false,
"member-ordering": [
true,
"static-before-instance"
],
"no-arg": true,
"no-bitwise": true, …Run Code Online (Sandbox Code Playgroud) angular ×6
rxjs ×2
angular-cli ×1
content-type ×1
devtools ×1
drupal ×1
drupal-7 ×1
drupal-rules ×1
events ×1
jquery ×1
lint ×1
memory-leaks ×1
ngrx ×1
subject ×1
swipe ×1
touch ×1
typescript ×1
unit-testing ×1
vitest ×1