У меня следующая проблема.
Учитывая два файла, intents.ts
и login.ts
, где intents.ts
содержит среди прочих
export const loginUiEventsHandler =
publish((uiEvents: Observable<UiEvents>) =>
merge(
uiEvents.pipe(filter(e => e.type === 'EMAIL_LOGIN_CHANGE'), flatMap((e: EmailLoginChange) => validateEmailLogin(e.emailLogin))),
uiEvents.pipe(filter(e => e.type === 'PASSWORD_CHANGE'), flatMap((e: PasswordChange) => validatePassword(e.password))),
uiEvents.pipe(filter(e => e.type === 'LOGIN_CLICK'), flatMap((e: LoginClick) => login(e.emailLogin, e.password)))
)
)
и login.js
содержит среди других
events
.pipe(loginUiEventsHandler)
.subscribe(e => console.log(e))
Когда я пытаюсь импортировать функцию loginUiEventsHandler
из intents.ts
в login.ts
, используя import { loginUiEventsHandler } from './intents';
, я получаю ошибку
TypeError: selector(...).subscribe is not a function
Однако , когда я просто копирую и вставляю ту же функцию в login.ts
, кажется, все работает нормально.
Что я делаю не так? Как я могу повторно использовать функцию rx js UnaryFunction для файлов.
Пожалуйста, извините, если этот вопрос очевиден, я только начал использовать машинопись.