Angular Academy · Pelajaran

Input Wajib dan yang Ditansformasi

Tandai input sebagai wajib dan ubah nilainya.

Pelajaran 2 dari 413 langkah

Input Wajib dan yang Ditansformasi adalah pelajaran Angular Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Angular Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Angular Academy mencakup 4 pelajaran total.

Melampaui Input Dasar

Input sinyal mendukung dua fitur andal: menandai input sebagai required dan mengubah nilai yang masuk sebelum disimpan.

Input Wajib

Gunakan input.required() ketika induk harus selalu memberikan nilai. Tidak ada nilai default.

import { input } from "@angular/core";

export class UserComponent {
  userId = input.required<string>();
}

Pentingnya Input Wajib

Jika input wajib tidak diikat, Angular melaporkan kesalahan sehingga kesalahan dapat ditemukan lebih awal, alih-alih membiarkan nilai yang tidak terdefinisi lolos.

<!-- error: userId is required -->
<app-user></app-user>

<!-- correct -->
<app-user [userId]="id"></app-user>

Input Wajib Tidak Bernilai Null

Karena input wajib harus diberikan, tipenya tidak pernah tidak terdefinisi, sehingga Anda dapat membacanya dengan aman tanpa pemeriksaan null.

userId = input.required<string>();
load() {
  return this.api.get(this.userId()); // always a string
}

Mengubah Input

Opsi transform menjalankan suatu fungsi pada nilai yang masuk sebelum nilai tersebut disimpan, yang berguna untuk pemaksaan tipe.

import { input } from "@angular/core";

export class ToggleComponent {
  disabled = input(false, { transform: (v: unknown) => !!v });
}

Pemaksaan Boolean

Angular menyediakan booleanAttribute untuk mengubah nilai bergaya atribut menjadi boolean sebenarnya, yang berguna untuk atribut yang ditentukan berdasarkan keberadaan.

import { input, booleanAttribute } from "@angular/core";

disabled = input(false, { transform: booleanAttribute });

<!-- both work -->
<app-btn disabled></app-btn>
<app-btn [disabled]="true"></app-btn>

Pemaksaan Angka

Demikian pula, numberAttribute mengubah atribut string menjadi angka.

import { input, numberAttribute } from "@angular/core";

count = input(0, { transform: numberAttribute });

<!-- string "5" becomes number 5 -->
<app-counter count="5"></app-counter>

Fungsi Transformasi Kustom

Anda dapat menulis transformasi apa pun untuk menormalkan nilai, misalnya memangkas string.

label = input("", {
  transform: (v: string) => v.trim()
});

Tipe Input dan Output Transformasi

Transformasi dapat menerima satu tipe dan menyimpan tipe lainnya. Tipe yang diterima adalah tipe yang diikat oleh induk; tipe yang disimpan adalah tipe yang Anda baca.

// accepts string | number, stores number
size = input(0, {
  transform: (v: string | number) => Number(v)
});

Wajib dan Transformasi Bersamaan

Anda dapat menggabungkan required dengan transformasi dengan meneruskan objek opsi ke input.required().

value = input.required({
  transform: numberAttribute
});

Kapan Menggunakan Masing-Masing

Gunakan required untuk mewajibkan pengikatan dan transformasi untuk memaksa tipe atau menormalkan data yang masuk, sehingga logika komponen tetap bersih dan konsisten.

Pemeriksaan Singkat

Uji pemahaman Anda tentang input wajib dan input yang diubah.

Rangkuman

Gunakan input.required() untuk input wajib (tidak dapat bernilai null dan tanpa default) serta opsi transform, termasuk booleanAttribute dan numberAttribute, untuk memaksa tipe nilai. Keduanya dapat digabungkan.

Gratis untuk memulai

Belajar HTML dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
38
Pelajaran
144

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Input Wajib dan yang Ditansformasi” gratis?

Ya — teks lengkap “Input Wajib dan yang Ditansformasi” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Angular Academy, upgrade ke CoddyKit PRO. Kursus Angular Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Input Wajib dan yang Ditansformasi”?

Tandai input sebagai wajib dan ubah nilainya. Kamu berlatih Angular Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Angular Academy?

Tidak diperlukan pengalaman sebelumnya. Angular Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Input Wajib dan yang Ditansformasi” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Angular Academy ini?

Ya. Setiap pelajaran Angular Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Input Sinyal dengan input()
  2. Input Wajib dan yang Ditansformasi
  3. Output dengan output()
  4. Kueri View dengan viewChild
← Kembali ke Angular Academy