Programming TypeScript


import { Component , OnInit } dan '@angular/core' import { MessageService } dan '../services/message.service'


Download 1.81 Mb.
bet167/206
Sana01.11.2023
Hajmi1.81 Mb.
#1737990
1   ...   163   164   165   166   167   168   169   170   ...   206
Bog'liq
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)

import { Component , OnInit } dan '@angular/core' import { MessageService } dan '../services/message.service'
@Component ({
selektor : 'oddiy xabar' ,
templateUrl : './simple-message.component.html' , styleUrls : [ './simple-message.component.css' ]
})
eksport sinf SimpleMessageComponent asboblar OnInit {
xabar : string konstruktor (
xususiy messageService : MessageService
) {} ngOnInit() {
bu . messageService . getMessage (). obuna bo'ling ( javob =>
bu . xabar = javob . xabar
)
}
}
Angular-ning AoT kompilyatori komponentingiz konstruktori oladigan parametrlarni ko'rib chiqadi, ularning turlarini ajratib oladi (masalan, MessageService ) va tegishli bog'liqlik injektorining bog'liqlik xaritasida o'ziga xos turdagi bog'liqlikni qidiradi. So'ngra u bu bog'liqlikni ( yangi - uni) amalga oshiradi, agar u hali yaratilmagan bo'lsa va uni SimpleMessageComponent misolining konstruktoriga o'tkazadi. Bu DI ishlarining barchasi juda murakkab, ammo ilovangiz o'sib borishi bilan qulay bo'lishi mumkin va sizda ilova qanday sozlanganiga qarab foydalanishingiz mumkin bo'lgan bir nechta bog'liqliklar mavjud (masalan,
ProductionAPIService versus DevelopmentAPIService ) yoki uni sinovdan o'tkazishda ( MockAPI Service ).
Keling, xizmatni qanday aniqlashni qisqacha ko'rib chiqaylik:
import { Injectable } dan '@angular/core' import { HttpClient } dan '@angular/common/http'
@Injectable ({ berilgan : "ildiz"
})
eksport sinf MessageService { konstruktor ( xususiy http : HttpClient ) {}
getMessage() {
qaytish bu . http . olish ( '/api/message' )
}
}
Injectable narsa sifatida ro'yxatdan o'tkazish uchun yana TypeScript dekoratorlaridan foydalanamiz va biz uning ilovaning ildiz darajasida yoki submodulda taqdim etilganligini aniqlaymiz. Bu erda biz MessageService xizmatini ro'yxatdan o'tkazdik , bu bizga uni ilovamizning istalgan joyiga kiritish imkonini beradi. Har qanday komponent yoki xizmat konstruktorida biz shunchaki MessageService-ni so'rashimiz mumkin va Angular sehrli tarzda uni o'tkazishga g'amxo'rlik qiladi.
Ushbu ikkita mashhur frontend ramkalaridan qanday qilib xavfsiz foydalanishni bilib, keling, frontend va backend o'rtasidagi interfeysni yozishga o'tamiz.

Download 1.81 Mb.

Do'stlaringiz bilan baham:
1   ...   163   164   165   166   167   168   169   170   ...   206




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling