假设我们有以下代码
const clickEvent$ = fromEvent(document, 'click').pipe(
pluck('target')
);
clickEvent$.pipe(
filter(node => node.id === 'button1')
).subscribe(() => {
console.log('Button 1 clicked!');
});
clickEvent$.pipe(
filter(node => node.id === 'button2')
).subscribe(() => {
console.log('Button 2 clicked!');
});
Run Code Online (Sandbox Code Playgroud)
当我查看调试器中注册的事件时,我发现文档上注册了两个单击事件。当 的订阅数量增加时clickEvent$
,注册到文档的事件数量也会随着每次订阅而增加。
相比之下,无论我向switch
语句添加多少个案例,下面的代码都只注册一个事件。
document.addEventListener('click', (event) => {
switch (event.target.id) {
case 'Button1':
console.log('Button 1 clicked!');
break;
case 'Button2':
console.log('Button 2 clicked!');
break;
}
});
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:-
这是我对热和冷可观察量的了解
share() …
所以我试图在nestjs中实现一个oauth2服务器,并且我一直在阅读规范[RFC 6749]
在规范中,所有查询参数名称甚至json响应都使用snake_case之类。
access_token
refresh_token
client_id
client_secret
redirect_uri
expires_in
Run Code Online (Sandbox Code Playgroud)
问题是,我的代码库的所有其余部分都使用camelCase,并且对一堆与oauth 相关的类使用snake_case 会使它们与代码库的其余部分不一致。
那么,我应该将所有 oauth 参数更改为驼峰命名法还是会被视为“不符合规范”。