কৌণিক - "কোনও পর্যবেক্ষণযোগ্য" সদস্য নেই


156

কোড

ত্রুটি তথ্য

প্রকারের কোড:

import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { of } from 'rxjs/observable/of';
import { Hero } from './hero';
import { HEROES } from './mock-heroes';

@Injectable({
  providedIn: 'root'
})
export class HeroService {

  constructor() { }

  getHeroes(): Observable<Hero[]> {
    return of(HEROES);
  }

}

ত্রুটি তথ্য:

ত্রুটি TS2307: 'rxjs-compat / পর্যবেক্ষণযোগ্য' মডিউলটি খুঁজে পাওয়া যায় না। নোড_মডিউল / rxjs / পর্যবেক্ষণযোগ্য / of.d.ts (1,15): ত্রুটি TS2307: মডিউল 'rxjs-compat / পর্যবেক্ষণযোগ্য / of' খুঁজে পাচ্ছে না। src / app / hero.service.ts (2,10): ত্রুটি TS2305: মডিউল '"F: / কৌনিক-ট্যুর অফ-হিরো / নোড_মডিউল / rxjs / পর্যবেক্ষণযোগ্য"' এর কোনও রফতানি সদস্য 'পর্যবেক্ষণযোগ্য' নেই। src / app / hero.service.ts (15,12): ত্রুটি TS2304: 'এর' নাম খুঁজে পাওয়া যায় না।

package.json কৌণিক সংস্করণ সহ ফাইল:

সংস্করণ


3
আপনি যে কাঠামোটি ব্যবহার করছেন তা নামকরণ হয়েছে কৌণিক। AngularJS একটি আলাদা কাঠামো।
জেবি নিজত

9
দেখে মনে হচ্ছে আপনি আরএক্সজেএস using ব্যবহার করছেন that সংস্করণটি ব্যবহার করার সময় আমদানিগুলি পরিবর্তন করা দরকার (প্রকাশের নোটগুলি দেখুন)। আপনি যদি কৌণিক 6 ব্যবহার না করে থাকেন তবে আপনার আরএক্সজেএস 5 এর সাথে থাকা উচিত
জেবি নিজেট

thx.Im Angular6.0 ~ ব্যবহার করছি
টমাস লি

5
তারপরে এখানে প্রাসঙ্গিক ডকুমেন্টেশন রয়েছে: Next.angular.io/guide/rx-library । নোট করুন যে আমদানিগুলি আপনি ব্যবহার করছেন তা নয়।
জেবি নিজত

উত্তর:


205

এই সহায়ক হতে পারে কৌণিক 6 আরও তথ্য এই পড়ুন জন্য ডকুমেন্ট

  1. rxjs: তৈরির পদ্ধতি, প্রকার, সময়সূচী এবং ইউটিলিটি
আমদানি {পর্যবেক্ষণযোগ্য, বিষয়, asapScheduler, পাইপ, এর, অন্তর, মেশানো, থেকে আট vent 'rxjs' থেকে;
  1. rxjs / অপারেটর : সমস্ত পাইপযোগ্য অপারেটর:
'আরএক্সজেএস / অপারেটর' থেকে import মানচিত্র, ফিল্টার, স্ক্যান import আমদানি করুন;
  1. rxjs / ওয়েবসকেট: ওয়েব সকেট বিষয় বাস্তবায়ন
'আরএক্সজেএস / ওয়েবসকেট' থেকে {ওয়েবসকেট import আমদানি করুন;
  1. rxjs / ajax : আরএক্স আজাক্স বাস্তবায়ন
'rxjs / ajax' থেকে import আজাক্স import আমদানি করুন;
  1. rxjs / টেস্টিং : পরীক্ষার ইউটিলিটিগুলি
'আরএক্সজেএস / টেস্টিং' থেকে আমদানি করুন {টেস্টশেজুলার;

4
আপনি কীভাবে 'এটি কাজ করতে পারেন?' প্রথম হাত থেকে? সার্চিং এসও কাজ করে, তবে লাইব্রেরিটি যদি কম ব্যবহৃত হত।
cjb110

12
এনপিএম rxjs-compat --save ইনস্টল করুন
EvAlex

115

স্পষ্টতই (যেমন আপনি ত্রুটির লগকে নির্দেশ করেছেন), কৌনিক 6.0.0 আপডেট করার পরে rxjs-compat অনুপস্থিত is

npm install rxjs-compat --saveইনস্টল করতে চালান । এটি ঠিক করা উচিত।


3
আমিও একই সমস্যার মুখোমুখি, তবে যদি আমি পশ্চাদপটে সামঞ্জস্যতা প্যাকেজটি ব্যবহার করতে না চাই?
প্রসন্ন সাসনে

2
আমরা কীভাবে rxjs-compat ব্যবহার করতে চাই না?
এনরিকো

2
এটি সঠিক উত্তর হওয়া উচিত। এটি সঠিক উত্তরটি এগিয়ে চলছে না ... তবে এটি অবশ্যই "এখনই" উত্তর।
উইলিয়াম টেরিল

96

কেবল লিখুন:

import { Observable} from 'rxjs';

এটার মতই. কম-বেশি কিছু নয়।


6
'Rxjs / পর্যবেক্ষণযোগ্য' এর পরিবর্তে 'rxjs' ব্যবহার করা কেবল আমার সমস্যার সমাধান করেছে। আমি মনে করি, প্রশ্নের মালিকের আপনার উত্তরটি গ্রহণ করা উচিত।
লেভেন্ট ডিভিলিওগলু

1
এটি অবশ্যই কাজ করবে। তবে এটি কি বৃক্ষ কাঁপানো সমর্থন করে?
স্যান্ডি

56

আমি এর সাথে মূল কোডটি প্রতিস্থাপন করেছি import { Observable, of } from 'rxjs'এবং সমস্যাটি সমাধান হয়ে গেছে।

এখানে চিত্র বর্ণনা লিখুন

এখানে চিত্র বর্ণনা লিখুন


30

আপনি আরএক্সজেএস 6 ব্যবহার করছেন Just

import { Observable } from 'rxjs/Observable';
import { of } from 'rxjs/observable/of';

দ্বারা

import { Observable, of } from 'rxjs';


10

আমাকে কী সাহায্য করেছে তা হ'ল:

  1. সমস্ত পুরানো আমদানি পথ থেকে মুক্তি পান এবং এগুলি এর সাথে নতুন করে প্রতিস্থাপন করুন:

    import { Observable , BehaviorSubject } from 'rxjs';)

  2. node_modulesফোল্ডার মুছুন

  3. npm cache verify
  4. npm install

6

আমারও একি দশা. ব্যাক-রিভিভিং আরএক্সজেএস 6.x থেকে সর্বশেষ 5.x রিলিজ এটিকে কৌণিক 5.2.x এর জন্য স্থির করেছে

ওপেন প্যাকেজ.জসন।

পরিবর্তন "rxjs": "^6.0.0",করুন"rxjs": "^5.5.10",

চালান npm update


আমি মনে করি এটি করা সবচেয়ে ভাল কারণ rxjs 6 কেবলমাত্র কৌনিক 6 থেকে সমর্থিত হবে।
ডেভিড ডি

4

/Observableথেকে সরাতে হবে'rxjs/Observable';

আপনি যদি Cannot find module 'rxjs-compat/Observable'কেবল থ্রিম টার্মিনালটিতে লাইনের নীচে রাখেন এবং এন্টার টিপুন।

npm install --save rxjs-compat

2

আমার রেজোলিউশনটি নিম্নলিখিত আমদানি যুক্ত করেছে: import { of } from 'rxjs/observable/of';

সুতরাং পরিবর্তনের পরে নায়ক.সর্বস্ব.টসের সামগ্রিক কোডটি হ'ল:

import { Injectable } from '@angular/core';
import { Hero } from './hero';
import { HEROES } from './mock-heroes';
import { of } from 'rxjs/observable/of';
import {Observable} from 'rxjs/Observable';

@Injectable()
export class HeroService {

  constructor() { }

  getHeroes(): Observable<Hero[]> {
    return of(HEROES);
  }
}

আচ্ছা যে ত্রুটিটি তিনি দিয়ে শুরু করেছিলেন, রফতানি সেখানে নেই export
জ্লাতকো

2

angular-splitকম্পোনেন্ট কৌণিক 6 সমর্থিত নয়, তাই এটি কৌণিক 6 সঙ্গে সামঞ্জস্যপূর্ণ করতে আপনার অ্যাপ্লিকেশনের মধ্যে নির্ভরতা নিম্নলিখিত ইনস্টল করতে

এটি আপডেট না হওয়া অবধি এই কাজটি পেতে:

"dependencies": {
"angular-split": "1.0.0-rc.3",
"rxjs": "^6.2.2",
    "rxjs-compat": "^6.2.2",
}

0

আমার ক্ষেত্রে এই ত্রুটিটি ঘটছিল কারণ আমার কম্পিউটারে আমার কাছে এনজি ক্লাইনের একটি পুরানো সংস্করণ ছিল।

দৌড়ানোর পরে সমস্যাটি সমাধান করা হয়েছিল:

ng update

ng update @angular/cli


0

কৌণিক-ইন-মেমরি-ওয়েব-এপিআই সংস্করণ আপডেট করুন । টিউটোরিয়াল কৌনিক-ট্যুর অফ-হিরোগুলির সময় ইনস্টল করা ডিফল্ট কৌণিক-ইন-মেমরি-ওয়েব-এপিআই সংস্করণ ছিল 0.4। এটি আমার ক্ষেত্রে মনোমুগ্ধকর মতো কাজ করেছিল। (আরএক্সজেএস 6 সহ কৌণিক 7 ব্যবহার করে)

npm i angular-in-memory-web-api@0.8.0

-3

ব্যবহার return Observable.of(HEROES);


1
যদিও এই উত্তরটি সম্ভবত সঠিক এবং কার্যকর, এটি কীভাবে সমস্যা সমাধানে সহায়তা করে তা ব্যাখ্যা করার জন্য যদি আপনি এর সাথে কিছু ব্যাখ্যা অন্তর্ভুক্ত করেন তবে এটি অগ্রাধিকার দেওয়া হয়। এটি ভবিষ্যতে বিশেষত কার্যকর হয়ে ওঠে, যদি কোনও পরিবর্তন ঘটে (সম্ভবত সম্পর্কিত নয়) তবে এটি কাজ করা বন্ধ করে দেয় এবং ব্যবহারকারীরা এটি কীভাবে একবার কাজ করেছিল তা বুঝতে হবে to
এর্টি সিডোহল

আপনি যদি প্রশ্নটি মনোযোগ সহকারে পড়ে থাকেন তবে আপনি 5 এর সাথে নয়, কৌনিক 6 এবং আরএক্সজেএস 6 এর উল্লেখ দেখতে পাবেন এই সমস্যাটি rxjs v6 + এর জন্য সুনির্দিষ্ট, যখন আপনি পোস্ট করা সমাধানটি rxjs (এবং কৌণিক) ভি 5 এর সাথে সম্পর্কিত।
জ্লাত্তো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.