கோண 2 கூறு உருவாக்கத்தில் உள்ள பொதுவான சிக்கல்கள்: 'ஆப்-பிராஜெக்ட்-லிஸ்ட்' பிழையை அங்கீகரித்து சரிசெய்தல்

கோண 2 கூறு உருவாக்கத்தில் உள்ள பொதுவான சிக்கல்கள்: 'ஆப்-பிராஜெக்ட்-லிஸ்ட்' பிழையை அங்கீகரித்து சரிசெய்தல்
கோண 2 கூறு உருவாக்கத்தில் உள்ள பொதுவான சிக்கல்கள்: 'ஆப்-பிராஜெக்ட்-லிஸ்ட்' பிழையை அங்கீகரித்து சரிசெய்தல்

கோண 2 கூறு ஒருங்கிணைப்பு சரிசெய்தல்

கோண 2 என்பது டெவலப்பர்கள் மாறும் வலைப் பயன்பாடுகளை உருவாக்கப் பயன்படுத்தும் பிரபலமான கட்டமைப்பாகும். Angular 2 இல் தொடங்கும் போது, ​​தொடக்கநிலையாளர்கள் எதிர்கொள்ளும் சவால்களில் ஒன்று, ஒரு பயன்பாட்டிற்குள் கூறுகளை உருவாக்குதல் மற்றும் சரியான ஒருங்கிணைப்பு ஆகும். புதிய கூறுகள் சரியாகப் பதிவு செய்யப்படாதபோது ஒரு பொதுவான சிக்கல் எழுகிறது, இது தொகுத்தல் அல்லது இயக்க நேரத்தின் போது பல்வேறு பிழைச் செய்திகளுக்கு வழிவகுக்கும்.

இந்தச் சூழ்நிலையில், பிழை குறிப்பாக ` உடன் ஒரு சிக்கலைக் குறிப்பிடுகிறது`கூறு. தொகுதி அறிவிப்புகளில் இருந்து ஒரு கூறு காணவில்லை அல்லது தொகுதியின் இறக்குமதியில் தவறாக உள்ளமைக்கப்படும் போது இந்த சிக்கல் பொதுவாக ஏற்படுகிறது. இந்த பிழைகள் புதிய கோண டெவலப்பர்களுக்கு வெறுப்பாக இருக்கலாம், ஆனால் அவை பெரும்பாலும் தொகுதி கட்டமைப்பில் சில முக்கிய மாற்றங்களுடன் தீர்க்கப்படுகின்றன.

இதுபோன்ற பிழைகளைச் சந்திக்கும் போது, ​​உங்களின் `app.module.ts` கோப்பில் கூறுகள் எவ்வாறு இறக்குமதி செய்யப்பட்டு அறிவிக்கப்படுகின்றன என்பதை இருமுறை சரிபார்க்க வேண்டியது அவசியம். பயன்பாட்டிற்குள் உதிரிபாகங்கள் எதிர்பார்த்தபடி செயல்படுவதை உறுதிசெய்ய, கோண தொகுதிகள் மற்றும் கூறு இறக்குமதிகளை சரியாக நிர்வகிப்பது அவசியம்.

இந்த வழிகாட்டியில், உங்கள் `ஆப்-பிராஜெக்ட்-லிஸ்ட்` பாகத்தில் நீங்கள் எதிர்கொள்ளும் பிழையை நாங்கள் உடைத்து, அதைச் சரிசெய்வதற்கான தெளிவான வழிமுறைகளை வழங்குவோம். இந்தக் கருத்துகளைப் புரிந்துகொள்வதன் மூலம், எதிர்காலத்தில் இதுபோன்ற சிக்கல்களைச் சரிசெய்து, உங்கள் கோணப் பயன்பாடுகளை மிகவும் திறமையாக உருவாக்க முடியும்.

கட்டளை பயன்பாட்டின் உதாரணம்
@NgModule இந்த அலங்கரிப்பான் முக்கிய தொகுதி மெட்டாடேட்டாவை கோணத்தில் வரையறுக்கப் பயன்படுகிறது. கூறு அறிவிப்புகள், தொகுதி இறக்குமதிகள், சேவை வழங்குநர்கள் மற்றும் பயன்பாட்டைத் தொடங்குவதற்கான பூட்ஸ்ட்ராப் அமைப்புகள் போன்ற முக்கிய உள்ளமைவுகள் இதில் அடங்கும்.
CUSTOM_ELEMENTS_SCHEMA Angular இன் NgModule இல் வலை கூறுகள் அல்லது கோணத்தால் அடையாளம் காணாத தனிப்பயன் கூறுகளைப் பயன்படுத்த அனுமதிக்கப்படுகிறது. டெம்ப்ளேட்களில் உள்ள அங்கீகரிக்கப்படாத உறுப்புகள் தொடர்பான பிழைகளைத் தடுக்கும் இந்த ஸ்கீமா.
ComponentFixture இது கூறுக்கான பொருத்தத்தை உருவாக்க கோண சோதனையில் பயன்படுத்தப்படுகிறது. இது கூறு நிகழ்விற்கான அணுகலை வழங்குகிறது மற்றும் ஒரு சோதனை சூழலில் கூறுகளின் செயல்பாட்டைப் பற்றிய தொடர்பு மற்றும் சோதனையை அனுமதிக்கிறது.
beforeEach தேவையான நிபந்தனைகளை அமைக்க, கோண அலகு சோதனைகளில் ஒவ்வொரு சோதனை வழக்குக்கும் முன் இந்தச் செயல்பாடு அழைக்கப்படுகிறது. கூறு உருவாக்கம் மற்றும் தொகுதி அமைப்பு உட்பட சோதனை சூழலை துவக்க இது பயன்படுகிறது.
TestBed அலகு சோதனைகளில் கூறுகளை அமைப்பதற்கும் உள்ளமைப்பதற்கும் கோணத்தின் முதன்மை சோதனை பயன்பாடு. இது சோதனை தொகுதியை உள்ளமைக்கிறது மற்றும் தனிமைப்படுத்தப்பட்ட சோதனை சூழலில் கூறுகளை உருவாக்குகிறது.
subscribe கோணத்தில் கவனிக்கக்கூடியவற்றிலிருந்து ஒத்திசைவற்ற தரவைக் கையாளப் பயன்படுத்தப்படும் ஒரு முறை. இந்த எடுத்துக்காட்டில், API இலிருந்து சேவையைப் பெறும்போது திட்டத் தரவைப் பெற இது ProjectServiceக்கு சந்தா செலுத்துகிறது.
OnInit கூறு துவக்கப்பட்ட பிறகு அழைக்கப்படும் ஒரு கோண வாழ்க்கை சுழற்சி கொக்கி. கூறுகளை உருவாக்கும்போது சேவைகளிலிருந்து தரவை ஏற்றுவது போன்ற கூறு அமைப்பைச் செய்ய இது பொதுவாகப் பயன்படுத்தப்படுகிறது.
detectChanges மாற்றத்தைக் கண்டறிவதைத் தூண்டுவதற்கும், சோதனைகளின் போது கூறு தரவு அல்லது நிலைகளை மாற்றிய பின் கூறுகளின் பார்வை புதுப்பிக்கப்படுவதை உறுதி செய்வதற்கும் கோண அலகு சோதனைகளில் இந்த முறை அழைக்கப்படுகிறது.

கோண 2 கூறு சிக்கல்களுக்கான தீர்வைப் புரிந்துகொள்வது

வழங்கப்பட்ட ஸ்கிரிப்ட்களில், முக்கிய நோக்கம் சரியாக உள்ளமைத்து அறிவிப்பதாகும் திட்டப்பட்டியல் கூறு ஒரு கோண 2 திட்டத்திற்குள். நீங்கள் சந்தித்த பிழையானது, விடுபட்ட கூறு அறிவிப்புகள் அல்லது ஆப்ஸ் மாட்யூலில் உள்ள தவறான உள்ளமைவுடன் தொடர்புடையது. வழங்கப்பட்ட முதல் தீர்வு இதை உறுதி செய்வதன் மூலம் நிவர்த்தி செய்கிறது திட்டப்பட்டியல் கூறு சரியாக இறக்குமதி செய்யப்பட்டு `AppModule` இல் அறிவிக்கப்பட்டது. இது பயன்படுத்துவதை உள்ளடக்கியது @NgModule அலங்கரிப்பாளர், இது தொகுதி கட்டமைப்பை வரையறுக்கிறது. முக்கிய கட்டளைகளில் கூறுகள் பதிவுசெய்யப்பட்ட `பிரகடனங்கள்` மற்றும் `இறக்குமதி` ஆகியவை அடங்கும், இது `BrowserModule` போன்ற பிற தேவையான தொகுதிகளின் ஒருங்கிணைப்பைக் கையாளுகிறது.

கோண பயன்பாடுகளில் அடிக்கடி நிகழும் குறிப்பிட்ட சிக்கல்களில் ஒன்று, வலை கூறுகளைப் பயன்படுத்தும் போது தனிப்பயன் உறுப்பு ஸ்கீமாக்கள் விடுபட்டது தொடர்பான பிழை ஆகும். இதை நிவர்த்தி செய்ய, ஸ்கிரிப்ட் பயன்பாட்டை அறிமுகப்படுத்துகிறது CUSTOM_ELEMENTS_SCHEMA, இது `@NgModule` இல் உள்ள `ஸ்கீமாஸ்` வரிசையில் சேர்க்கப்பட்டது. இந்த ஸ்கீமா, கோணத்தின் நிலையான கூறு கட்டமைப்பின் ஒரு பகுதியாக இல்லாத தனிப்பயன் HTML குறிச்சொற்களை அங்கீகரிக்க கோணலை அனுமதிக்கிறது. இது இல்லாமல், கோணமானது, அறிமுகமில்லாத குறிச்சொற்களை எதிர்கொள்ளும் போதெல்லாம், அவை தவறாக அறிவிக்கப்பட்ட கூறுகள் என்று கருதி பிழைகளை வீசும்.

இரண்டாவது தீர்வு, கூறு சரியாகச் செயல்படுவதை உறுதிசெய்கிறது. இது தரவைப் பெறுவதற்குப் பொறுப்பான ஒரு சேவையை (`ProjectService`) வரையறுக்கிறது, இது கோணத்தின் சார்பு ஊசி அமைப்பு வழியாக `ProjectListComponent` இல் செலுத்தப்படுகிறது. `ngOnInit` லைஃப்சைக்கிள் ஹூக்கில், திட்டத் தரவை ஒத்திசைவின்றி மீட்டெடுக்க `சந்தா' முறை பயன்படுத்தப்படுகிறது. ஏபிஐகள் போன்ற வெளிப்புற மூலங்களிலிருந்து தரவை ஒருங்கிணைப்பதற்கும் ஒத்திசைவற்ற செயல்பாடுகளைக் கையாளுவதற்கும் இது கோணத்தில் பொதுவான வடிவமாகும். `OnInit` இடைமுகத்தைப் பயன்படுத்துவது, கூறு தொடங்கப்பட்ட உடனேயே தரவு-பெறுதல் தர்க்கம் இயங்குவதை உறுதி செய்கிறது.

இறுதி தீர்வு சோதனையில் கவனம் செலுத்துகிறது. உதிரிபாகங்கள் மற்றும் சேவைகள் எதிர்பார்த்தபடி செயல்படுவதை உறுதி செய்வதற்காக எந்த கோண திட்டத்திலும் அலகு சோதனை ஒரு முக்கிய பகுதியாகும். வழங்கப்பட்ட சோதனை ஸ்கிரிப்ட்டில், சோதனைச் சூழலில் கூறுகளை அமைக்க `TestBed` பயன்பாடு பயன்படுத்தப்படுகிறது. ஒவ்வொரு சோதனைக்கும் முன் `ஒவ்வொருவருக்கும் முன்` செயல்பாடு கூறுகளைத் துவக்குகிறது, அதே நேரத்தில் `காம்பொனென்ட் ஃபிக்ஸ்ச்சர்` சோதனையின் போது கூறுகளுடன் நேரடியாக தொடர்பு கொள்ள அனுமதிக்கிறது. இந்தச் சோதனைக் கட்டமைப்பானது, கூறு உண்மையான சூழலில் செயல்படுவது மட்டுமல்லாமல், சோதனைச் சூழலில் பல்வேறு நிலைமைகளின் கீழ் எதிர்பார்த்தபடி செயல்படுவதையும் உறுதி செய்கிறது. கோண மேம்பாட்டில் சிறந்த நடைமுறைகளை செயல்படுத்தும்போது இந்த ஸ்கிரிப்டுகள் கூட்டாக சிக்கலை தீர்க்கின்றன.

'ஆப்-பிராஜெக்ட்-லிஸ்ட்' கூறு சிக்கலை கோண 2ல் தீர்க்கிறது

அணுகுமுறை 1: தொகுதி அறிவிப்பை சரிசெய்தல் மற்றும் திட்டப்பட்டியல் கூறுகளை சரியாக இறக்குமதி செய்தல்

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { ProjectListComponent } from './components/project-list/project-list.component';

@NgModule({
  declarations: [AppComponent, ProjectListComponent],
  imports: [BrowserModule],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

கோண 2 இல் சரியான சேவை ஊசி மற்றும் கூறு துவக்கத்தை உறுதி செய்தல்

அணுகுமுறை 2: கூறுகளின் டெம்ப்ளேட்டைச் சரிபார்த்தல், சேவை ஊசி மற்றும் ProjectListComponent இன் பயன்பாடு

import { Component, OnInit } from '@angular/core';
import { ProjectService } from '../../services/project.service';
import { Project } from '../../models/Project';

@Component({
  selector: 'app-project-list',
  templateUrl: './project-list.component.html',
  styleUrls: ['./project-list.component.scss']
})
export class ProjectListComponent implements OnInit {
  projects: Project[] = [];
  constructor(private projectService: ProjectService) { }

  ngOnInit(): void {
    this.projectService.getProjects().subscribe(data => {
      this.projects = data;
    });
  }
}

கோணத்தில் வலை கூறுகளுக்கான விடுபட்ட திட்டப் பிழையைத் தீர்ப்பது

அணுகுமுறை 3: வலை கூறுகளுக்கான பிழைகளை அடக்குவதற்கு CUSTOM_ELEMENTS_SCHEMA ஐச் சேர்த்தல்

import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { ProjectListComponent } from './components/project-list/project-list.component';

@NgModule({
  declarations: [AppComponent, ProjectListComponent],
  imports: [BrowserModule],
  providers: [],
  bootstrap: [AppComponent],
  schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
export class AppModule { }

கோணத்தில் ProjectListComponentக்கான அலகு சோதனைகளைச் சேர்த்தல்

அணுகுமுறை 4: கூறுகளின் செயல்பாட்டை சரிபார்க்க அலகு சோதனைகளை செயல்படுத்துதல்

import { TestBed } from '@angular/core/testing';
import { ProjectListComponent } from './project-list.component';
import { ProjectService } from '../../services/project.service';

describe('ProjectListComponent', () => {
  let component: ProjectListComponent;
  let fixture: ComponentFixture<ProjectListComponent>;

  beforeEach(async () => {
    await TestBed.configureTestingModule({
      declarations: [ ProjectListComponent ],
      providers: [ProjectService]
    }).compileComponents();
  });

  beforeEach(() => {
    fixture = TestBed.createComponent(ProjectListComponent);
    component = fixture.componentInstance;
    fixture.detectChanges();
  });

  it('should create the component', () => {
    expect(component).toBeTruthy();
  });
});

கோண 2 இல் கூறு தொடர்பை ஆராய்தல்

கோண 2 இல் உள்ள ஒரு முக்கியமான கருத்து, வெவ்வேறு கூறுகள் ஒருவருக்கொருவர் எவ்வாறு தொடர்பு கொள்கின்றன என்பது. சிக்கலான பயன்பாட்டில், தரவைப் பகிர அல்லது மாற்றங்களை ஒருவருக்கொருவர் தெரிவிக்க உங்களுக்கு அடிக்கடி கூறுகள் தேவைப்படும். இந்த தொடர்பை எளிதாக்குவதற்கு கோண 2 பல வழிமுறைகளை வழங்குகிறது உள்ளீடு மற்றும் வெளியீடு பண்புகள், சேவைகள் மற்றும் EventEmitter. இவற்றைப் பயன்படுத்தி, ஒரு குழந்தைக் கூறு அதன் பெற்றோருக்குத் தரவைத் திருப்பி அனுப்பலாம் அல்லது பெற்றோர் அதன் குழந்தைக் கூறுகளுக்குத் தரவை அனுப்பலாம். பல கூறுகளில் மாறும் தரவு புதுப்பிப்புகளைக் கையாளும் போது இதைப் புரிந்துகொள்வது முக்கியமானது.

கோணல் தான் சேவைகள் கூறுகளின் படிநிலையில் நேரடியாக தொடர்பில்லாத கூறுகளுக்கு இடையே தகவல்தொடர்புகளை செயல்படுத்துவதில் முக்கிய பங்கு வகிக்கிறது. ஒரு சேவையை உருவாக்கி அதை தேவையான கூறுகளில் செலுத்துவதன் மூலம், நீங்கள் தரவு மற்றும் நிலைகளை திறம்பட பகிர்ந்து கொள்ளலாம். இந்த முறை பகிரப்பட்ட சேவையாக அறியப்படுகிறது. உங்கள் கூறுகள் துண்டிக்கப்படுவதை உறுதிசெய்கிறது, அவற்றைத் தொடர்புகொள்வதற்கும், உங்கள் கோணப் பயன்பாடுகளில் சிறந்த அமைப்பை மேம்படுத்துவதற்கும் பராமரிப்பதற்கும் உதவுகிறது.

மற்றொரு முக்கியமான தலைப்பு பயன்பாடு ஆகும் கவனிக்கக்கூடியவை கோணத்தில் 2. RxJS இன் பகுதியாக இருக்கும் அவதானிப்புகள், HTTP கோரிக்கைகள் அல்லது பயனர் உள்ளீட்டு நிகழ்வுகள் போன்ற ஒத்திசைவற்ற தரவு ஸ்ட்ரீம்களைக் கையாள உங்களை அனுமதிக்கின்றன. API களில் இருந்து தரவைப் பெறுவதற்கும், தரவு மாறும்போது பார்வையைப் புதுப்பிப்பதற்கும் கோணப் பயன்பாடுகளில் அவை பெரிதும் பயன்படுத்தப்படுகின்றன. கவனிக்கக்கூடியவற்றை சரியாக நிர்வகித்தல் மற்றும் `வரைபடம்`, `வடிகட்டி` மற்றும் `சந்தா' போன்ற ஆபரேட்டர்களை எவ்வாறு பயன்படுத்துவது என்பதைப் புரிந்துகொள்வது உங்கள் கோணக் கூறுகளை மிகவும் திறமையாகவும், பயனர் செயல்களுக்குப் பதிலளிக்கக்கூடியதாகவும் மாற்றுவதற்கு முக்கியமாகும்.

கோண 2 கூறுகள் மற்றும் தொகுதிகள் பற்றிய பொதுவான கேள்விகள்

  1. இரண்டு கோண கூறுகளுக்கு இடையே நான் எவ்வாறு தொடர்பு கொள்வது?
  2. நீங்கள் பயன்படுத்தலாம் @Input மற்றும் @Output பெற்றோர் மற்றும் குழந்தை கூறுகளுக்கு இடையில் தரவை அனுப்ப டெக்கரேட்டர்கள் அல்லது பகிரப்பட்டவை service உடன்பிறப்பு கூறுகளுக்கு.
  3. @NgModule அலங்கரிப்பாளரின் நோக்கம் என்ன?
  4. தி @NgModule டெக்கரேட்டர் தொகுதியின் மெட்டாடேட்டாவை வரையறுக்கிறது, இதில் எந்தெந்த கூறுகள் தொகுதிக்கு சொந்தமானது, எந்த தொகுதிகளை இறக்குமதி செய்கிறது மற்றும் அதன் வழங்குநர்கள் மற்றும் பூட்ஸ்ட்ராப் கூறுகள் ஆகியவை அடங்கும்.
  5. கோணத்தில் கவனிக்கக்கூடியவற்றின் பங்கு என்ன?
  6. ஒத்திசைவற்ற தரவு ஸ்ட்ரீம்களைக் கையாள, குறிப்பாக HTTP கோரிக்கைகள், நிகழ்வு கையாளுதல் அல்லது தரவு பிணைப்புகள் ஆகியவற்றில் கவனிக்கக்கூடியவை பயன்படுத்தப்படுகின்றன. இதைப் பயன்படுத்தி நீங்கள் தரவு ஓட்டத்தை நிர்வகிக்கலாம் subscribe பதில்களைக் கையாள.
  7. "கூறு என்பது தொகுதியின் ஒரு பகுதி" என்ற பிழையை எவ்வாறு சரிசெய்வது?
  8. கூறு அறிவிக்கப்பட்டுள்ளதை உறுதிசெய்க declarations தொகுதியின் வரிசை மற்றும் அது வேறு தொகுதியில் இருந்தால் சரியாக இறக்குமதி செய்யப்படும்.
  9. CUSTOM_ELEMENTS_SCHEMA எதற்காகப் பயன்படுத்தப்படுகிறது?
  10. இந்த திட்டம் சேர்க்கப்பட்டது schemas நிலையான கோணக் கூறுகள் இல்லாத தனிப்பயன் வலை கூறுகளைப் பயன்படுத்த அனுமதிக்க தொகுதியில் வரிசை.

பொதுவான கோணக் கூறு பிழைகளைத் தீர்ப்பது

கோணக் கூறு பிழைகளைத் தீர்ப்பதில், அனைத்து கூறுகளும் தொகுதியில் சரியாக அறிவிக்கப்பட்டு இறக்குமதி செய்யப்படுவதை உறுதி செய்வது முக்கியம். தொகுதி இறக்குமதிகள் அல்லது அறிவிப்புகளில் உள்ள தவறான கட்டமைப்புகள் பெரும்பாலும் இந்த வகையான பிழைகளுக்கு வழிவகுக்கும். கோண தொகுதிகள் எவ்வாறு செயல்படுகின்றன என்பதைப் புரிந்துகொள்வது இந்தச் சிக்கல்களை விரைவாகச் சரிசெய்ய உதவுகிறது.

மேலும், தனிப்பயன் இணையக் கூறுகளைக் கையாள்வது போன்ற குறிப்பிட்ட திட்டங்களைப் பயன்படுத்த வேண்டும் CUSTOM_ELEMENTS_SCHEMA. இந்தக் கருத்துகளைப் பற்றிய உறுதியான புரிதலுடன், உங்கள் கோணக் கூறுகள் நன்கு கட்டமைக்கப்பட்டதாகவும், செயல்படக்கூடியதாகவும், வெவ்வேறு திட்டங்களில் பராமரிக்க எளிதாகவும் இருப்பதை உறுதிசெய்யலாம்.

குறிப்புகள் மற்றும் ஆதாரங்கள்
  1. மாட்யூல் தொடர்பான பிழைகளைத் தீர்ப்பதற்கான உதவிக்குறிப்புகள் உட்பட, கோண 2 கூறு கட்டமைப்பு மற்றும் சரிசெய்தல் ஆகியவற்றை விரிவாகக் கூறுகிறது. ஆதாரம்: கோண அதிகாரப்பூர்வ ஆவணம் .
  2. கோண பயன்பாடுகளில் சார்பு ஊசி மற்றும் சேவை ஒருங்கிணைப்பு பற்றி விவாதிக்கிறது, இது ProjectService பயன்பாட்டிற்கு பொருத்தமானது. ஆதாரம்: கோண சார்பு ஊசி வழிகாட்டி .
  3. CUSTOM_ELEMENTS_SCHEMA போன்ற திட்டங்களைப் பயன்படுத்தி கோணத்தில் தனிப்பயன் இணையக் கூறுகளை எவ்வாறு கையாள்வது என்பதை விளக்குகிறது. ஆதாரம்: கோண CUSTOM_ELEMENTS_SCHEMA API .