cari
Rumahhujung hadapan webtutorial jsMembuat Komponen dalam Angular 2 dengan TypeScript dan ES5

Creating Components in Angular 2 with Typescript and ES5

mata teras

    Angular 2.0 menggunakan TypeScript (superset JavaScript) untuk mengoptimumkan prestasi, meningkatkan kelajuan halaman dan automasi aliran kerja. TypeScript membolehkan pemaju menggunakan maklumat jenis untuk mencatatkan kod JavaScript, dengan itu membantu menangkap kesilapan dalam asas kod.
  • Angular 2.0 memperkenalkan konsep komponen, yang merupakan blok kod yang boleh diguna semula yang mengandungi pandangan dan logik. Komponen menggantikan arahan sebagai elemen utama rangka kerja, memastikan bahawa satu bahagian kod aplikasi tidak mengganggu bahagian lain kod.
  • Membuat komponen dalam sudut 2.0 menggunakan TypeScript melibatkan penentuan kelas komponen dan mengimport fungsi yang diperlukan dari sudut. Kemudian, menghiasi kelas dengan penghias @komponen dan mengeksportnya untuk digunakan di bahagian lain aplikasi.
  • Angular 2.0 juga menyokong ES5, yang merupakan versi JavaScript standard yang berjalan di kebanyakan pelayar. Untuk membuat komponen menggunakan ES5 dalam sudut 2.0, pemaju boleh menggunakan kaedah pada objek NG untuk menentukan komponen dan menambah fungsi. Kemudian anda boleh menjalankan kod secara langsung dalam penyemak imbas tanpa memerlukan pelayan.

Artikel ini dikaji semula oleh Stephan Max, Jeff Smith dan Ravi Kiran. Terima kasih kepada semua pengulas rakan sebaya untuk mendapatkan kandungan SitePoint dengan sebaik -baiknya!

Sebagai pendekatan akhir tahun, pasukan sudut lebih dekat dari sebelumnya untuk melepaskan versi Stabil Angular 2.0. Ini akan membentuk semula cara aplikasi sudut dibangunkan, tetapi akan mempunyai hasil yang lebih baik. Dalam artikel ini, saya akan menunjukkan kepada anda beberapa konsep teras dalam sudut 2.0 dan cara menggunakannya. Khususnya, saya akan memandu anda melalui proses membina komponen Angular 2 dari awal hingga akhir. Pertama, kita akan mempelajari lebih lanjut mengenai cara melakukan ini dengan TypeScript, dan kemudian kita akan memindahkan komponen sudut supaya ia dapat dijalankan dengan ES5 tulen.

Kod untuk tutorial ini boleh didapati di pangkalan kod GitHub kami. Pangkalan kod mempunyai dua cawangan, satu untuk versi Typescript dan satu untuk versi ES5. Jika anda ingin mengklonkan cawangan tertentu, gunakan

. git clone <url> --branch <branch></branch></url>

Apakah komponen?

Penggunaan komponen dalam JavaScript telah meningkat dengan ketara sejak beberapa bulan yang lalu. Mereka digunakan dalam projek -projek seperti React, Knockout, Ember, dan banyak lagi, jadi tidak hairanlah bahawa Angular mengintegrasikannya ke dalam versi 2.0. Modulariti kod sentiasa menjadi tumpuan pasukan sudut, dan penggunaan komponen menyoroti ini kerana mereka membolehkan kami memecahkan kod ke dalam blok yang terkandung.

Jadi apa itu komponen? Ia pada dasarnya adalah sekeping kod yang boleh digunakan semula sepanjang aplikasi. Ia mengandungi dua bahagian: Lihat dan Logik. Dengan memanfaatkan perhatian pasukan pembangunan sudut kepada komponen, kita boleh mengambil kesempatan daripada beberapa ciri yang sangat kuat. Angular 2 menjadikannya sangat mudah untuk membuat aplikasi dinamik yang terdiri daripada komponen yang berbeza yang telah menggantikan arahan sebagai teras rangka kerja. Dalam Angular 2, arahan adalah komponen ringan yang hanya digunakan untuk menambah beberapa fungsi ke DOM. Sekarang, pemaju sudut tidak perlu bimbang tentang mengacaukan permohonan mereka kerana isu -isu konflik yang berkaitan dengan mengasingkan $ skop. Sebaliknya, menggunakan komponen adalah cara untuk memastikan bahawa satu bahagian kod aplikasi tidak mengganggu bahagian lain kod.

typescript

Angular 2.0 telah dibuat untuk menggunakan TypeScript, yang merupakan superset JavaScript. Pemaju sudut telah menghabiskan banyak masa menyelesaikan pelepasan ini. Mereka bekerja keras untuk mengoptimumkan prestasi, termasuk kelajuan halaman dan automasi aliran kerja. TypeScript adalah serupa dengan transcoder lain, yang membolehkan pemaju menulis kod yang mudah ditukar kepada JavaScript yang sah. Bahawa dikatakan, ia telah menjadi lebih popular sepanjang tahun lalu, jadi pasukan sudut memutuskan untuk menggunakannya untuk membuat rangka kerja.

Salah satu manfaat menggunakan TypeScript ialah sistem jenisnya, yang membolehkan pemaju mengulas JavaScript menggunakan maklumat jenis. Kod anotasi ini akan berjalan melalui pengkompil, yang membantu menangkap kesilapan yang sebaliknya bersembunyi di pangkalan kod yang menunggu penemuan pengguna. Sekarang mari kita lihat aplikasi praktikal TypeScript.

Di bawah, saya mengekstrak contoh dari artikel TJ Van Toll "The Rise of Typescript". Dalam fungsi ini, kita melihat bahawa parameter ketinggian dan lebar mestilah jenis angka. : number sebelum badan fungsi menentukan jenis pulangan, yang juga jenis angka. Oleh itu, mana-mana kandungan bukan angka yang diserahkan kepada fungsi ini akan menyebabkan pengkompil membuang kesilapan pada masa penyusunan.

function calculateArea(height: number, width: number): number {
  return height * width;
}
console.log(calculateArea(2, 3));
// 将正常工作

console.log(calculateArea("Ten", "Eleven"));
// 参数类型“string”不可分配给参数类型“number”。

Pengisytiharan taip membantu kami mendokumenkan API dan menjadikan kod kami lebih mudah untuk dikekalkan dari masa ke masa.

Pemasangan

Proses menyusun jenis ke dalam JavaScript sangat mudah. Mula -mula dapatkan pakej TypeScript dari NPM:

npm install -g typescript

Setelah pemasangan selesai, menyusun jenis ke dalam JavaScript adalah semudah menjalankan arahan berikut dari baris arahan (fail typescript disimpan dengan lanjutan .ts):

tsc <filename.ts>
Sekarang, mari kita lihat bagaimana Angular 2 dapat memanfaatkan kuasa TypeScript untuk membuat komponen tersuai dengan mudah. Kod untuk contoh pertama kami boleh didapati di cawangan TypeScript asas kod GitHub kami.

Buat komponen dalam TypeScript

Kerana TypeScript adalah superset JavaScript, mana -mana JavaScript yang sah boleh berfungsi dengan betul dalam fail .ts. Dengan menggunakan TypeScript, pemaju boleh melanjutkan kod JavaScript mereka untuk memanfaatkan ciri ES6 terkini. Dalam contoh ini, kami akan menggunakan kelas.

Di bawah, saya membuat komponen menggunakan kod TypeScript. Saya mula -mula mengimport sudut menggunakan sintaks import ES6. Dalam contoh ini, kami akan menentukan komponen dan pandangan komponen itu. Setelah selesai, kita akan memerlukan fungsi Bootstrap Angular untuk membuat sudut menjalankan kod. Dalam kod ini kita akan melihat simbol @, yang digunakan untuk memberitahu Angular apa yang kita cuba bina.

function calculateArea(height: number, width: number): number {
  return height * width;
}
console.log(calculateArea(2, 3));
// 将正常工作

console.log(calculateArea("Ten", "Eleven"));
// 参数类型“string”不可分配给参数类型“number”。

Kerana Angular 2 dibina di atas TypeScript, rangka kerja ini mengiktiraf anotasi @komponen kami dan mengetahui bahawa kami cuba membuat komponen baru. Di samping itu, ia memberitahu Angular bahawa apabila ia melihat <user-name></user-name> dalam HTML kami, kami ingin memberi instantiasi komponen.

Seperti yang disebutkan di atas, komponen mengandungi dua bahagian:

  • Lihat
  • Logistik

Oleh kerana komponen ditakrifkan, kita kini perlu membuat pandangan dan logik.

Selepas komponen kami, kami boleh menambah beberapa kod TypeScript untuk menentukan pandangan kami. Mari kita lihat kesinambungan kod di atas dan lihat sendiri betapa mudahnya Angular membuat pandangan menambahkan kepada komponen tersuai:

npm install -g typescript

Sekarang, apabila saya menambah <user-name></user-name> ke fail index.html saya, templat ini disuntik ke dalam DOM. Bahawa dikatakan, bahagian logik komponen kami kosong kerana kelas UserComponent kami tidak mengandungi sebarang kod.

Dalam contoh di atas, saya hanya mempunyai satu kelas kosong. Tetapi sekarang, saya akan membuat pemboleh ubah nama dan kemudian menjadikan pemboleh ubah nama ini dalam pandangan kami menggunakan ungkapan:

tsc <filename.ts>

anda juga akan melihat fungsi bootstrap yang saya sebutkan tadi. Walaupun mereka berkongsi nama, fungsi ini digunakan untuk memulakan atau boot aplikasi sudut kami dan tidak berkaitan dengan kerangka Bootstrap Twitter. Jika kita lupa untuk lulus komponen kita ke dalam fungsi ini, Angular tidak akan tahu untuk memuatkan komponen kita.

Saya juga ingin perhatikan dengan cepat bahawa aplikasi kami mesti menggunakan beberapa jenis pelayan untuk dipaparkan dengan betul. Jika anda mengaksesnya secara langsung, System.js tidak akan dapat memuatkan modul utama kami, yang mengandungi kod kami.

Sekarang, pengguna menggunakan repositori contoh ini boleh dijalankan

dalam direktori root. Selepas menjalankan arahan ini, kita dapat melihat kesan sebenar komponen kami dengan melawat node app.js https://www.php.cn/link/f74d6ef882234fd34400a296b1da6149 . Mudah -mudahan ini menggambarkan betapa mudahnya sudut menjadikan logik menambah komponen!

memindahkan komponen kami ke ES5

Bagi mereka yang ingin menggunakan ES5 untuk memanfaatkan kuasa 2.0, pasukan Angular 2 telah mencipta versi rangka kerja yang boleh dimasukkan ke dalam laman web. Ini perlu kerana ES5 tidak mempunyai sistem modul, jadi kita memerlukan beberapa jenis bundle yang dilaksanakan sendiri. Jika anda melihat kod untuk contoh pertama, anda akan melihat bahawa saya perlu menambah tiga tag skrip yang berbeza kepada aplikasi. Dalam contoh ini, kita hanya perlu menambah skrip berikut.

function calculateArea(height: number, width: number): number {
  return height * width;
}
console.log(calculateArea(2, 3));
// 将正常工作

console.log(calculateArea("Ten", "Eleven"));
// 参数类型“string”不可分配给参数类型“number”。

Dengan skrip ini, pemaju boleh menggunakan pengetahuan mereka tentang ES5 tanpa bimbang tentang mengorbankan keupayaan rangka kerja. Mari lihat bagaimana membina komponen sudut menggunakan ES5. Kod untuk contoh ini boleh didapati di cawangan ES5 asas kod GitHub kami. Iaitu, mari kita mulakan!

Untuk mencipta komponen menggunakan ES5 dan bukannya TypeScript, saya akan menggunakan beberapa pendekatan yang berbeza. Ini pada dasarnya sama seperti apa yang saya lakukan dalam contoh di atas, tetapi kami akan menggunakan pautan kaedah pada objek NG dan bukannya menggunakan simbol @. Ini ditunjukkan dalam kod berikut:

npm install -g typescript

Sekarang kita boleh terus menambah ciri -ciri kepada komponen kami yang akan dipaparkan apabila aplikasi kami membaca pemilih <user-name></user-name>.

mari kita gunakan kaedah paparan dan kelas. Dalam kaedah pandangan kami, kami hanya perlu lulus dalam rentetan templat yang kami gunakan sebelum ini. Oleh kerana kelas tidak disokong dalam ES5, kami akan mensimulasikan penggunaan kami dalam kaedah kelas dengan membuat pembina mudah yang akan mengandungi atribut nama kami.

tsc <filename.ts>

tetapi kita kehilangan sesuatu. Dalam contoh TypeScript kami, kami menggunakan fungsi bootstrap untuk memulakan kod sudut kami. Inilah cara melakukan perkara yang sama dalam ES5:

import { Component, View, bootstrap } from 'angular2/angular2';
@Component({
  selector: 'user-name'
})

Ini harus diletakkan di bawah kod aplikasi tersuai kami. Ini akan menyebabkan sudut boot aplikasi kami dan memuatkan komponen selepas beban halaman. Tidak seperti contoh terdahulu kami (memerlukan pelayan), halaman ini boleh dilihat secara langsung dalam penyemak imbas.

Seperti yang anda lihat, pasukan sudut menyediakan penyelesaian yang jelas untuk pengguna yang ingin membina 2.0 aplikasi dengan ES5. Jika anda berminat dengan ini, saya sangat mengesyorkan bahawa anda menyemak Perpustakaan A.JS, yang membolehkan pemaju membina aplikasi sudut dalam ES5 menggunakan sintaks seperti Typescript.

Kesimpulan

Harap ini memberi anda pandangan yang mendalam pada pelbagai aspek sudut yang akan muncul dalam versi seterusnya rangka kerja. Sekiranya anda ingin membina aplikasi lengkap dengan Angular 2 dan Typescript (dalam hal ini papan mesej), maka saya cadangkan anda menyemak artikel ini: Bermula dengan Angular 2 dengan TypeScript.

Saya juga ingin mengetahui pengalaman anda dengan Angular 2. Adakah anda telah mencubanya? Adakah anda telah membina sesuatu yang ingin anda kongsi? Tolong beritahu saya dalam komen.

Soalan Lazim untuk membuat komponen dalam sudut 2 menggunakan TypeScript dan ES5

Bagaimana untuk membuat komponen dalam sudut 2 menggunakan TypeScript?

Membuat komponen dalam sudut 2 menggunakan TypeScript melibatkan beberapa langkah. Pertama, anda perlu mengimport simbol komponen dari perpustakaan teras sudut. Anda kemudian menentukan kelas komponen dan menghiasnya dengan penghias @komponen. Penghias memberitahu Angular bahawa kelas adalah komponen dan menyediakan metadata seperti pemilih dan templat. Akhirnya, anda mengeksport kelas komponen supaya anda boleh menggunakannya di bahagian lain aplikasi. Berikut adalah contoh asas:

function calculateArea(height: number, width: number): number {
  return height * width;
}
console.log(calculateArea(2, 3));
// 将正常工作

console.log(calculateArea("Ten", "Eleven"));
// 参数类型“string”不可分配给参数类型“number”。

Apakah perbezaan antara TypeScript dan ES5 dalam Angular 2?

TypeScript dan ES5 adalah kedua -dua bahasa yang anda boleh gunakan untuk menulis aplikasi Angular 2, tetapi mereka mempunyai beberapa perbezaan utama. TypeScript adalah superset statik JavaScript yang menambah jenis dan ciri -ciri lain kepada bahasa. Ia adalah bahasa pilihan untuk Angular 2 kerana ia menjadikan kod itu lebih mantap dan lebih mudah untuk dikekalkan. Sebaliknya, ES5 adalah versi JavaScript standard yang berjalan di kebanyakan pelayar. Aplikasi Angular 2 boleh ditulis menggunakan ES5, tetapi anda akan terlepas beberapa manfaat TypeScript.

(Soalan Lazim yang lain berkaitan dengan sudut dan bertindak balas, dan tidak sepadan dengan topik asal, jadi mereka ditinggalkan.)

Atas ialah kandungan terperinci Membuat Komponen dalam Angular 2 dengan TypeScript dan ES5. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Python vs JavaScript: Analisis Perbandingan untuk PemajuPython vs JavaScript: Analisis Perbandingan untuk PemajuMay 09, 2025 am 12:22 AM

Perbezaan utama antara Python dan JavaScript ialah sistem jenis dan senario aplikasi. 1. Python menggunakan jenis dinamik, sesuai untuk pengkomputeran saintifik dan analisis data. 2. JavaScript mengamalkan jenis yang lemah dan digunakan secara meluas dalam pembangunan depan dan stack penuh. Kedua -duanya mempunyai kelebihan mereka sendiri dalam pengaturcaraan dan pengoptimuman prestasi yang tidak segerak, dan harus diputuskan mengikut keperluan projek ketika memilih.

Python vs JavaScript: Memilih alat yang sesuai untuk pekerjaanPython vs JavaScript: Memilih alat yang sesuai untuk pekerjaanMay 08, 2025 am 12:10 AM

Sama ada untuk memilih Python atau JavaScript bergantung kepada jenis projek: 1) Pilih Python untuk Sains Data dan Tugas Automasi; 2) Pilih JavaScript untuk pembangunan front-end dan penuh. Python disukai untuk perpustakaannya yang kuat dalam pemprosesan data dan automasi, sementara JavaScript sangat diperlukan untuk kelebihannya dalam interaksi web dan pembangunan stack penuh.

Python dan javascript: memahami kekuatan masing -masingPython dan javascript: memahami kekuatan masing -masingMay 06, 2025 am 12:15 AM

Python dan JavaScript masing -masing mempunyai kelebihan mereka sendiri, dan pilihan bergantung kepada keperluan projek dan keutamaan peribadi. 1. Python mudah dipelajari, dengan sintaks ringkas, sesuai untuk sains data dan pembangunan back-end, tetapi mempunyai kelajuan pelaksanaan yang perlahan. 2. JavaScript berada di mana-mana dalam pembangunan front-end dan mempunyai keupayaan pengaturcaraan tak segerak yang kuat. Node.js menjadikannya sesuai untuk pembangunan penuh, tetapi sintaks mungkin rumit dan rawan kesilapan.

Inti JavaScript: Adakah ia dibina di atas C atau C?Inti JavaScript: Adakah ia dibina di atas C atau C?May 05, 2025 am 12:07 AM

Javascriptisnotbuiltoncorc; it'saninterpretedlanguagethatrunsonenginesoftenwritteninc .1) javascriptwasdesignedasalightweight, interpratedlanguageforwebbrowsers.2)

Aplikasi JavaScript: Dari Front-End ke Back-EndAplikasi JavaScript: Dari Front-End ke Back-EndMay 04, 2025 am 12:12 AM

JavaScript boleh digunakan untuk pembangunan front-end dan back-end. Bahagian depan meningkatkan pengalaman pengguna melalui operasi DOM, dan back-end mengendalikan tugas pelayan melalui Node.js. 1. Contoh front-end: Tukar kandungan teks laman web. 2. Contoh backend: Buat pelayan Node.js.

Python vs JavaScript: Bahasa mana yang harus anda pelajari?Python vs JavaScript: Bahasa mana yang harus anda pelajari?May 03, 2025 am 12:10 AM

Memilih Python atau JavaScript harus berdasarkan perkembangan kerjaya, keluk pembelajaran dan ekosistem: 1) Pembangunan Kerjaya: Python sesuai untuk sains data dan pembangunan back-end, sementara JavaScript sesuai untuk pembangunan depan dan penuh. 2) Kurva Pembelajaran: Sintaks Python adalah ringkas dan sesuai untuk pemula; Sintaks JavaScript adalah fleksibel. 3) Ekosistem: Python mempunyai perpustakaan pengkomputeran saintifik yang kaya, dan JavaScript mempunyai rangka kerja front-end yang kuat.

Rangka Kerja JavaScript: Menguasai Pembangunan Web ModenRangka Kerja JavaScript: Menguasai Pembangunan Web ModenMay 02, 2025 am 12:04 AM

Kuasa rangka kerja JavaScript terletak pada pembangunan yang memudahkan, meningkatkan pengalaman pengguna dan prestasi aplikasi. Apabila memilih rangka kerja, pertimbangkan: 1.

Hubungan antara JavaScript, C, dan penyemak imbasHubungan antara JavaScript, C, dan penyemak imbasMay 01, 2025 am 12:06 AM

Pengenalan Saya tahu anda mungkin merasa pelik, apa sebenarnya yang perlu dilakukan oleh JavaScript, C dan penyemak imbas? Mereka seolah -olah tidak berkaitan, tetapi sebenarnya, mereka memainkan peranan yang sangat penting dalam pembangunan web moden. Hari ini kita akan membincangkan hubungan rapat antara ketiga -tiga ini. Melalui artikel ini, anda akan mempelajari bagaimana JavaScript berjalan dalam penyemak imbas, peranan C dalam enjin pelayar, dan bagaimana mereka bekerjasama untuk memacu rendering dan interaksi laman web. Kita semua tahu hubungan antara JavaScript dan penyemak imbas. JavaScript adalah bahasa utama pembangunan front-end. Ia berjalan secara langsung di penyemak imbas, menjadikan laman web jelas dan menarik. Adakah anda pernah tertanya -tanya mengapa Javascr

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Nordhold: Sistem Fusion, dijelaskan
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.