TS1086: একটি অ্যাক্সেসর পরিবেষ্টনের প্রসঙ্গে ঘোষণা করা যাবে না


13

টার্মিনাল এনজি তে প্রাথমিক প্রয়োগ ন্যাড টাইপ করার পরে আমার এই হাজার হাজার ত্রুটি রয়েছে এবং আমি এটি সমাধান করতে পারি না। টাইপস্ক্রিপ্ট ত্রুটিগুলি সহ যখন আমার ভিতরে কৌনিকটির মতো সমস্যা হয় তখন আমার পক্ষে এই প্রথম:

../../ নোড_মডিউলস /@angular/flex-layout/core/typings/base/base2.d.ts:24:19 এ ত্রুটি - ত্রুটি TS1086: একটি অ্যাক্সেসরকে পরিবেষ্টনের প্রসঙ্গে ঘোষণা করা যাবে না।

24     protected get parentElement(): HTMLElement | null;
                     ~~~~~~~~~~~~~
../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19

- ত্রুটি টিএস 1086: একটি অ্যাক্সেসরকে পরিবেষ্টনের প্রসঙ্গে ঘোষণা করা যাবে না।

26     protected get nativeElement(): HTMLElement;
                     ~~~~~~~~~~~~~
../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9

- ত্রুটি টিএস 1086: একটি অ্যাক্সেসরকে পরিবেষ্টনের প্রসঙ্গে ঘোষণা করা যাবে না।

28     get activatedValue(): string;
           ~~~~~~~~~~~~~~
../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9

- ত্রুটি টিএস 1086: একটি অ্যাক্সেসরকে পরিবেষ্টনের প্রসঙ্গে ঘোষণা করা যাবে না।

29     set activatedValue(value: string);
           ~~~~~~~~~~~~~~
../../node_modules/@angular/flex-layout/core/typings/breakpoints/break-point-registry.d.ts:20:9

- ত্রুটি টিএস 1086: একটি অ্যাক্সেসরকে পরিবেষ্টনের প্রসঙ্গে ঘোষণা করা যাবে না। [...]

কেউ কি কারণ জানতে পারে? আমি আমার অ্যাপ্লিকেশনটিকে ঠিক না করা পর্যন্ত পরীক্ষা করতে পারি না।

আপডেট 1

ঠিক আছে, আমি এটি এগিয়ে। বেশিরভাগ ত্রুটিগুলি চলে গেছে তবে আমার এখন কয়েকটি রয়েছে, উদাহরণস্বরূপ এগুলির মধ্যে প্রথমটি:

এসসিআর / অ্যাপ্লিকেশন / মুখ্য / প্রধান ডটকম অংশ.আরগুলিতে ত্রুটি: 143: 63 - ত্রুটি টিএস 2322: টাইপ করুন 'স্ট্রিং | অপরিবর্তিত 'স্ট্রিং' টাইপ করার যোগ্য নয়। টাইপ 'অপরিজ্ঞাত' টাইপ 'স্ট্রিং' টাইপ করার যোগ্য নয়।

143 this.fileService.add ({isFolder: সত্য, নাম: ফোল্ডার.নেম, পিতা বা মাতা: this.currentRoot? This.currentRoot.id: 'রুট'});

কোডটি এর মতো দেখাচ্ছে:

main.component.ts:

currentRoot: MpFileElement = new MpFileElement();
...
    addFolder(folder: { name: string }) {
        this.fileService.add({ isFolder: true, name: folder.name, parent: 
    this.currentRoot ? this.currentRoot.id : 'root' });
        this.updateFileElementQuery();
    }
...

file.service.ts:

import { Injectable } from '@angular/core';

import { v4 } from 'uuid';
import { MpFileElement } from '../models/mp-file-element.model';
import { Observable } from 'rxjs/internal/Observable';
import { BehaviorSubject } from 'rxjs';

export interface IFileService {
    add(fileElement: MpFileElement);
    delete(id: string);
    update(id: string, update: Partial<MpFileElement>);
    queryInFolder(folderId: string): Observable<MpFileElement[]>;
    get(id: string): MpFileElement;
}

@Injectable()
export class MpFileService implements IFileService {

    constructor() {}
    private map = new Map<string, MpFileElement>()

    private querySubject: BehaviorSubject<MpFileElement[]>;

    add(fileElement: MpFileElement) {
        fileElement.id = v4();
        this.map.set(fileElement.id, this.clone(fileElement));
        return fileElement;
    }

    delete(id: string) {
        this.map.delete(id);
    }

    update(id: string, update: Partial<MpFileElement>) {
        let element = this.map.get(id);
        element = Object.assign(element, update);
        this.map.set(element.id, element);
    }
    queryInFolder(folderId: string) {
        const result: MpFileElement[] = [];
        this.map.forEach(element => {
            if (element.parent === folderId) {
                result.push(this.clone(element));
            }
        })
        if (!this.querySubject) {
            this.querySubject = new BehaviorSubject(result);
        } else {
            this.querySubject.next(result);
        }
        return this.querySubject.asObservable();
    }

    get(id: string) {
        return this.map.get(id);
    }

    clone(element: MpFileElement) {
        return JSON.parse(JSON.stringify(element));
    }
}

1
আমি এটি পড়তাম - github.com/microsoft/TypeScript/issues/33939
স্যাম

@ সাম আমি এটি পড়েছি এবং কিছুই সাহায্য করে না - দুঃখের সাথে
xavn-mpt

1
আপনি কি 9.0.0-beta.28@ কৌনিক / ফ্লেক্স-লেআউট এর সংস্করণ ব্যবহার করছেন ? পূর্ববর্তী সংস্করণে টিএস সংস্করণটি টোল দেওয়ার আগে আমি আবার ফিরে যাওয়ার চেষ্টা করব।
স্যাম

@ স্যাম আমি প্যাকেজ.জসনে পুরানো সংস্করণে পরিবর্তিত হয়েছি এবং নোড_মডিউলগুলি, প্যাকেজ-লক.জসন মুছে ফেলার পরে আবার সবকিছু ইনস্টল করার পরেও একই সমস্যা রয়েছে।
xavn-mpt

@ সাম এই মুহুর্তে এটি 8.0.0-বিটা.27
xavn-mpt

উত্তর:


16

আমার একই সমস্যা ছিল এবং এই 2 টি আদেশ আমার জীবন বাঁচিয়েছে। আমার অন্তর্নিহিত সমস্যা হ'ল আমি সর্বদা বিশ্বব্যাপী ইনস্টল এবং স্থানীয় ইনস্টলের সাথে ঝামেলা করছি। হতে পারে আপনিও অনুরূপ সমস্যার মুখোমুখি হয়েছি এবং আশা করি এই আদেশগুলি চালানো আপনার সমস্যাটিও সমাধান করবে।

ng update --next @angular/cli --force
npm install typescript@latest

এটি আমার পক্ষে ভাল কাজ করেছে।
এই যশ হয়

2
এটা আমার জন্য কাজ করে। তবে আমাকে আমার টাইপ স্ক্রিপ্ট সংস্করণটি 3.6.x এ ডাউনগ্রেড করতে হবে। 3.8.0 এর উপরে কাজ করছে না এবং ত্রুটি ছুঁড়েছে।
হার্দিক প্যাটেল

10

সেট "skipLibCheck": trueমধ্যে tsconfig.jsonআমার সমস্যার সমাধান

"compilerOptions": {
    "skipLibCheck": true
}

1
এটাও আমার জন্য কাজ এবং আমি একটি POC বা নমুনা প্রকল্পের জন্য এটা উত্তম মনে করি, কিন্তু অন্য থ্রেড সাধারণ এই কাজ করার সম্ভাব্য মূল্যবান নিয়েও আলোচনা করেন: stackoverflow.com/questions/52311779/...
ewomack

এটি আমার পক্ষে কাজ, অনেক চেষ্টা করার পরে অবশেষে আমি আমার মেট্রোনিক ডেমো প্রকল্পটি শুরু করি। ধন্যবাদ!
JMSamudio

7

এখন আমার কৌণিক 8 প্রকল্পে @ কৌনিক / ফ্লেক্স-লেআউট যুক্ত করার সময় আমি একই সমস্যা পেয়েছি

`npm install @angular/flex-layout --save`.

এটি এখন থেকে এই কমান্ডটি ফ্লেক্স-লেআউট প্যাকেজের 9 ম সংস্করণটি ইনস্টল করেছে। অন্যান্য সংস্করণে সর্বশেষ সংস্করণে আপগ্রেড না করে প্যাকেজের পরিবর্তে আমি সর্বশেষ 8 তম বড় সংস্করণটি ইনস্টল করে সমাধান করেছি ।

 npm install @angular/flex-layout@8.0.0-beta.27 --save

2

দেখে মনে হচ্ছে আপনি সম্প্রতি ফ্লেক্স-লেআউট প্যাকেজ ইনস্টল করেছেন। আপনার নোড_মডিউলগুলি ফোল্ডার থেকে এই প্যাকেজ ফোল্ডারটি সরানোর চেষ্টা করুন এবং এই প্যাকেজের পূর্ববর্তী সংস্করণটি পুনরায় ইনস্টল করুন।

সম্প্রতি (বর্তমান তারিখের 2 দিন আগে), কৌণিক প্রকাশিত সর্বশেষ কৌণিক-ক্লিপ সংস্করণ (v9.0.1) যার ফলে এই সর্বশেষ সংস্করণটির সমর্থনে অনেকগুলি প্যাকেজ আপডেট করা হয়েছে। আপনার ক্ষেত্রে আপনার পুরানো ক্লিপ সংস্করণ থাকতে পারে এবং আপনি এই প্যাকেজটি ইনস্টল করার সময় এটি ডিফল্টরূপে সর্বশেষ সংস্করণের জন্য ডাউনলোড করা হয়েছিল। সুতরাং আপনার প্যাকেজ সংস্করণটি ডাউনগ্রেড করার চেষ্টা করুন। কমপক্ষে আমার জন্য কাজ করেছেন।

এছাড়াও, প্যাকেজ.জসন ফাইলটিতে আপনার প্যাকেজের সংস্করণটি ডাউনগ্রেড করতে ভুলবেন না



2

আমার ক্ষেত্রে @ কৌনিক / অ্যানিমেশনগুলি ডাউনগ্রেডিংয়ের কাজ করেছে, আপনি যদি এটি করতে সক্ষম হন তবে কমান্ডটি চালান

npm i @angular/animations@6.1.10

বা সংস্করণ ট্যাব থেকে আপনার জন্য কাজ করতে পারে এমন অন্য সংস্করণ ব্যবহার করুন: https://www.npmjs.com/package/@angular/animations


2

দ্রুত সমাধান: আপডেট প্যাকেজ.জসন

"devDependencies": {
   ...
   "typescript": "~3.7.4",
 }

Tsconfig.json এ

{
    ...,
    "angularCompilerOptions": {
       ...,
       "disableTypeScriptVersionCheck": true
    }
}

তারপরে নোড_মডিউলগুলি ফোল্ডারটি সরিয়ে পুনরায় ইনস্টল করুন

এনপিএম ইনস্টল

আরও দেখার জন্য এখানে


0

এটি একটি সংক্ষিপ্ত উত্তর যা আমি আশাবাদী

এগ্রুলার এবং কৌণিক-সিএলআইকে ভি 8-তে ডাউনগ্রেড করার চেষ্টা করুন, আমি মনে করি আপনার সমস্যাটি একটি প্যাকেজ সামঞ্জস্যতার সমস্যা


0

আমি মনে করি যে আপনার সমস্যাটি টাইপস্ক্রিপ্ট এবং মডিউল সংস্করণ মিল নয় from এই সমস্যাটি আপনার প্রশ্নের সাথে খুব মিল এবং উত্তরগুলি খুব সন্তোষজনক।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.