2016-03-25 2 views
3

Я только что установил rxjs 5 beta 3 через npm i [email protected].IntelliJ IDEA не находит операторов Observable in rxjs5

У меня есть следующий пример кода:

import {Observable} from "rxjs" 

new Observable(o => o.next(42)).filter(() => true); 

Этот код компилируется отлично при использовании TS-узла, например.

Но при просмотре этого кода внутри IntelliJ IDEA оператор filter() не найден.

При использовании операторов в экземпляре Observable они также не найдены.

Предложенные статические члены Observable являются:

  • create()
  • if()
  • throw()

Предложенное члены экземпляра Observable являются:

  • _isScalar()
  • forEach()
  • lift()
  • subscribe()

Я также попытался импортировать только то, что мне нужно, но все-таки мой IDE говорит мне, что filter() не существует на Наблюдаемая Например:

import {Observable} from "rxjs/Observable" 
import "rxjs/add/operator/filter" 

new Observable(o => o.next(42)).filter(() => true); 

Любые предложения по изготовлению IntelliJ IDEA знает об операторах?

ответ

4

Пожалуйста, проверьте IDEA 2016.1.2 or higher

Примечание: Справочник node_modules должен быть не исключен из проекта.
В противном случае см ответить https://stackoverflow.com/a/38499577/1057218

Примечание 2: Файл package.json должен содержать прямую зависимость (или devdependency) '' rxjs

+1

Я скачал новый IntelliJ IDEA 2016,1 145.596.7 версии и проблема все еще существует. – svi3c

+1

@ user558398, поэтому, пожалуйста, следуйте этой проблеме. Https://youtrack.jetbrains.com/issue/WEB-20992 – anstarovoyt

+1

То же самое, даже если этот ответ отмечен как принятый, он не решает проблему. Я по-прежнему получаю ошибки проверки на '.filter' /' .map' при импорте с 'import {Observable} из 'rxjs/Rx';' – Pylinux

2

Принимается ответ не работает. Я проверил IntelliJ IDEA 2016.2.1 EAP (ideaIU-162.1447.7), и проблема все еще сохраняется.

кроличья нора следующим образом:

  1. В принятом ответе вы найдете ссылку на версию 2016.1, но это не решает проблему.
  2. Затем вы видите комментарий с link к IntelliJ bugtracker, где OP имеет первый/верхний комментарий.
  3. В нижней части этой темы/проблемы вы найдете комментарий saying IDEA 2016.2 162.426.1 EAP определенно устранит проблему, это не так.

Нижняя линия, если вы импортировать все, что RxJS может предложить с import {Observable} from 'rxjs/Rx'; IntelliJ еще будет жаловаться, что он не может найти способы, как .map и .filter

+0

не могли бы вы попробовать версию для выпуска IDEA 2016.2? – anstarovoyt

+0

Как я уже говорил на первой строке, я попробовал это в версии ** IntelliJ IDEA 2016.2.1 EAP ** – Pylinux

+0

yes, 2016.2.1 EAP - это версия eap. Я имею в виду стабильную версию 2016.2 – anstarovoyt

6

Чтобы устранить эту проблему, вам нужно добавить RxJS в библиотеку JavaScript в IntelliJ:

  1. Перейти к Настройки ->Языки и каркасов ->JavaScript ->Библиотеки
  2. Нажмите Add ...
  3. Добавить node_modules/rxjs нажав кнопку +
  4. Нажмите все OK кнопки, пока вы не вернетесь в редакторе.

Это решение тестировался на IDEA 2016.1.3

+0

извините, но это не работает в IDEA Ultimate 2016.2 http://pasteboard.co/3KvUZkSDv.png, после устранения этой ошибки ошибка сохраняется. Также я не считаю, что полезно добавлять rxjs в библиотеки, поскольку node_modules уже является «корнем библиотеки». – Rob

+0

это сработало для меня, но зачем мне добавлять rxjs вручную, когда node_module уже добавлен? – Ankush

Смежные вопросы