小编imp*_*end的帖子

尝试从"可观察链"中观察到错误

好.我的Angular组件中有一些异步代码,效果很好.看起来像这样(简要):

export class SomeComponent {

    user: User;
    /* ... */
    email: string;
    /* ... */

    private someMethod(): void {
      /* some code here */
      this.userService1.getUsers().subscribe(users => {
        users.forEach(user => {
          if (user.email && user.email === this.email) {
             this.userService2.getUser(user.id).subscribe(foundUser => {
               let someFields;
               if (foundUser) {
                 someFields = (({ field1, field2 }) => ({ field1, field2 }))(foundUser); 
               }
               this.user = {...user, ...someFields};
             });
           }
         });
      });
      /*some code here */              
    }
 }
Run Code Online (Sandbox Code Playgroud)

我跳过一些类型和名称变量有点尴尬(但很简单)因为它不是重点.代码有效.但我想封装用户构建过程(来自2个服务)因为我需要它在不同的组件中.我试过了,但......

constructUser(email): Observable<IUser> {
  let …
Run Code Online (Sandbox Code Playgroud)

javascript functional-programming observable rxjs angular

6
推荐指数
1
解决办法
275
查看次数

如何捕获 HTML5 音频中的“停止”事件然后执行某些操作?

我是 HTML5 的初学者,甚至不是 JS 的中间人,但我试图弄清楚如何正确使用<audio>其他东西......所以我有这个问题......我的 html:

<i class='some_icon' onclick='play();'>
  <audio src='some_mp3.mp3' id='player'></audio>
</i>
Run Code Online (Sandbox Code Playgroud)

现在,当我单击图标时,我想要播放一些 mp3 文件,它可以工作,因为我编写了以下 js:

function play() {
    var my = document.getElementById('player');
    if (my.paused) {
      my.play();
    } else {
      my.pause();
      my.currentTime = 0
    }
  }
Run Code Online (Sandbox Code Playgroud)

但是,除此之外,我想在 mp3 文件结束时更改我的图标...我该怎么做?任何帮助将不胜感激 :)

html javascript audio

2
推荐指数
1
解决办法
2762
查看次数

如何从Java中的某些键获取价值?

我不是Java开发人员,但是现在我正在用它编写一些测试,并且我遇到了简单的问题(我认为这对于"javaGuys"来说很简单).

在我的类Test中我得到的变量包含一些在JavaScript中看起来像对象的字符串(我的意思是JSON).这里是:

String myStringThatLooksLikeJSON = client.getStartSessionContent();
Run Code Online (Sandbox Code Playgroud)

在调试模式下,字符串的内容......:

myStringThatLooksLikeJSON = "{"context":"blabla","count":0,"value":[{"args":"speech-model","id":"1203"}]}"
Run Code Online (Sandbox Code Playgroud)

现在我的问题.我怎样才能获得价值,例如"args"?

在JavaScript中,它可以很容易地完成:

console.log(myStringThatLooksLikeJSON.value[0].args, "args");
Run Code Online (Sandbox Code Playgroud)

在我的控制台中,我可以看到speech-model args.

但是如何在Java中做到这一点?可能吗?最纯粹的共同和简单的方式!Plz任何人帮助:)希望我足够清楚.

javascript java

1
推荐指数
2
解决办法
135
查看次数