Javascript RxJS自定义可观察不';如果我移动到单独的功能,则不会触发

Javascript RxJS自定义可观察不';如果我移动到单独的功能,则不会触发,javascript,reactjs,rxjs,Javascript,Reactjs,Rxjs,目前我正在学习RxJS,我遇到了一个尴尬的情况,我创建了一个基本的自定义可观察对象,从后端服务获取,然后使用管道进行一些链接 我正在做这个。在App.js中的useEffect函数中,我有以下正在运行的代码: const http$ = Observable.create(async observer => { try { const res = await axios("localhost:3001"); await observer.next

目前我正在学习RxJS,我遇到了一个尴尬的情况,我创建了一个基本的自定义可观察对象,从后端服务获取,然后使用管道进行一些链接

我正在做这个。在App.js中的useEffect函数中,我有以下正在运行的代码:

const http$ = Observable.create(async observer => {
      try {
        const res = await axios("localhost:3001");
        await observer.next(res.data);
        await observer.complete();
      } catch (er) {
        observer.error(er);
      }
    });

    const posts$ = http$.pipe(
      map(posts => posts.map(post => ({ ...post, genre: "Music" })))
    );

    posts$.subscribe(
      posts => console.log(posts),
      noop,
      () => {
        console.log("completed");
      }
    );
现在,当我在一个单独的文件上移动可观察的功能并尝试再次运行时,它不会在一个奇怪的情况下运行。它甚至不发出请求,控制台上也没有显示错误

utils.js中的函数:

import { Observable } from "rxjs";
import { axios } from "axios";

export const createHttpObservable = url =>
  Observable.create(async observer => {
    try {
      const res = await axios(url);
      await observer.next(res.data);
      await observer.complete();
    } catch (er) {
      observer.error(er);
    }
  });

在App.js中的某些方面:

 const http$ = createHttpObservable('localhost:3001');
 const posts$ = http$.pipe(...
有人能帮我吗?因为我想我错过了什么。
非常感谢。

最后我发现axios库的导入是错误的。当前的实现没有问题。非常感谢。

在第二种情况下,你在哪里订阅可观察到的?在App.js中,就像我在第一个地方做的那样。没有改变任何逻辑,只是在单独的函数上移动了可观测值。如果您回答自己的问题,至少添加您的解决方案。。。