Ngx-Bootstrap - Panduan Cepat
Ngx-bootstrap adalah pustaka yang sangat populer untuk menggunakan komponen bootstrap dalam proyek Berbasis Angular. Ini berisi hampir semua komponen inti Bootstrap. Komponen ngx-bootstrap memiliki desain modular, dapat diperluas, dan dapat disesuaikan. Berikut adalah poin sorotan utama dari pustaka bootstrap ini.
Fleksibilitas
Semua komponen didesain secara modular. Templat khusus, Gaya dapat diterapkan dengan mudah.
Semua komponen dapat diperluas dan dapat disesuaikan serta berfungsi di desktop dan seluler dengan kemudahan dan kinerja yang sama.
Dukung
Semua komponen menggunakan panduan gaya terbaru dan pedoman untuk pemeliharaan kode dan keterbacaan.
Semua komponen diuji unit sepenuhnya dan mendukung versi sudut terbaru.
Dokumentasi ekstensif
Semua komponen didokumentasikan dengan baik dan ditulis dengan baik.
Semua komponen memiliki beberapa demo yang berfungsi untuk menunjukkan berbagai jenis fungsi.
Sumber Terbuka
ngx-bootstrap adalah proyek open source. Ini didukung oleh Lisensi MIT.
Di bab ini, Anda akan mempelajari secara mendetail tentang cara mengatur lingkungan kerja ngx-bootstrap di komputer lokal Anda. Karena ngx-bootstrap terutama untuk proyek bersudut, pastikan Anda memilikinyaNode.js dan npm dan angular diinstal di sistem Anda.
Buat proyek sudut
Pertama buat proyek sudut untuk menguji komponen ngx-bootstrap menggunakan perintah berikut.
ng new ngxbootstrap
Ini akan membuat proyek bersudut bernama ngxbootstrap.
Tambahkan ngx-bootstrap sebagai dependensi
Anda dapat menggunakan perintah berikut untuk menginstal ngx-bootstrap di proyek yang baru dibuat−
npm install ngx-bootstrap
Anda dapat mengamati keluaran berikut setelah ngx-bootstrap berhasil diinstal -
+ [email protected]
added 1 package from 1 contributor and audited 1454 packages in 16.743s
Sekarang, untuk menguji apakah bootstrap berfungsi dengan baik dengan Node.js, buat komponen uji menggunakan perintah berikut -
ng g component test
CREATE src/app/test/test.component.html (19 bytes)
CREATE src/app/test/test.component.spec.ts (614 bytes)
CREATE src/app/test/test.component.ts (267 bytes)
CREATE src/app/test/test.component.css (0 bytes)
UPDATE src/app/app.module.ts (388 bytes)
Hapus konten app.component.html dan perbarui konten berikut.
app.component.html
<app-test></app-test>
Perbarui konten app.module.ts untuk menyertakan modul akordeon ngx-bootstrap. Kami akan menambahkan modul lain di bab-bab berikutnya. Perbarui konten berikut.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion'
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule.forRoot()
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui konten index.html untuk menyertakan bootstrap.css. Perbarui konten berikut.
index.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Ngxbootstrap</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<app-root></app-root>
</body>
</html>
Di bab berikutnya, kami akan memperbarui komponen pengujian untuk menggunakan komponen ngx-bootstrap.
Accordion adalah kontrol untuk menampilkan panel yang dapat dilipat dan digunakan untuk menampilkan informasi dalam ruang terbatas.
AccordionComponent
Menampilkan panel konten yang dapat diciutkan untuk menyajikan informasi dalam ruang terbatas.
pemilih
accordion
Masukan
closeOthers - boolean, jika benar memperluas satu item akan menutup semua item lainnya
isAnimated - boolean, hidupkan / matikan animasi, default: false
AccordionPanelComponent
AccordionHeading
Alih-alih menggunakan atribut heading pada grup-akordeon, Anda dapat menggunakan atribut heading-akordeon pada elemen apa pun di dalam grup yang akan digunakan sebagai template header grup.
pemilih
grup akordeon, panel akordeon
Masukan
heading - string, teks yang dapat diklik di header grup akordeon
isDisabled - boolean, mengaktifkan / menonaktifkan grup akordeon
isOpen- boolean, Apakah grup akordeon terbuka atau tertutup. Properti ini mendukung pengikatan dua arah
panelClass - string, Memberikan kemampuan untuk menggunakan kelas panel kontekstual Bootstrap (panel-primer, panel-sukses, panel-info, dll ...).
Keluaran
isOpenChange - Memancarkan saat keadaan terbuka berubah
AccordionConfig
Layanan konfigurasi, memberikan nilai default untuk AccordionComponent.
Properti
closeOthers- boolean, Apakah panel lain harus ditutup saat panel dibuka. Default: salah
isAnimated - boolean, hidupkan / matikan animasi
Contoh
Karena kami akan menggunakan akordeon, Kami telah memperbarui app.module.ts untuk digunakan AccordionModuleseperti dalam bab Pengaturan Lingkungan ngx-bootstrap .
Perbarui test.component.html untuk menggunakan akordeon.
test.component.html
<accordion>
<accordion-group heading="Open By Default" [isOpen]="open">
<p>Open By Default</p>
</accordion-group>
<accordion-group heading="Disabled" [isDisabled]="disabled">
<p>Disabled</p>
</accordion-group>
<accordion-group heading="with isOpenChange" (isOpenChange)="log($event)">
<p>Open Event</p>
</accordion-group>
</accordion>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
open: boolean = true;
disabled: boolean = true;
constructor() { }
ngOnInit(): void {
}
log(isOpened: boolean){
console.log(isOpened);
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200 dan verifikasi keluaran berikut.
Lansiran memberikan pesan kontekstual untuk tindakan pengguna biasa seperti info, kesalahan dengan pesan peringatan yang tersedia dan fleksibel.
AlertComponent
Menampilkan panel konten yang dapat diciutkan untuk menyajikan informasi dalam ruang terbatas.
pemilih
alert,bs-alert
Masukan
dismissible - boolean, Jika disetel, menampilkan tombol "Tutup" sebaris, default: salah
dismissOnTimeout- string | angka, Angka dalam milidetik, setelah itu peringatan akan ditutup
isOpen - boolean, Apakah peringatan terlihat, default: benar
type- string, tipe peringatan. Menyediakan salah satu dari empat kelas kontekstual yang didukung bootstrap: keberhasilan, info, peringatan dan bahaya, default: peringatan
Keluaran
onClose - Peristiwa ini dijalankan segera setelah metode contoh dekat dipanggil, $ event adalah turunan dari komponen Alert.
onClosed - Acara ini aktif saat peringatan ditutup, $ acara adalah turunan dari komponen Peringatan
AlertConfig
Properti
dismissible - boolean, apakah peringatan dapat ditutup secara default, default: false
dismissOnTimeout - angka, waktu default sebelum peringatan akan ditutup, default: tidak ditentukan
type - string, tipe peringatan default, default: peringatan
Contoh
Karena kami akan menggunakan peringatan, Kami telah memperbarui app.module.ts yang digunakan dalam bab Accordion ngx-bootstrap untuk digunakan.AlertModule dan AlertConfig.
Perbarui app.module.ts untuk menggunakan AlertModule dan AlertConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule, AlertConfig } from 'ngx-bootstrap/alert';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule
],
providers: [AlertConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan peringatan.
test.component.html
<alert type="success"
[dismissible]="dismissible"
[isOpen]="open"
(onClosed)="log($event)"
[dismissOnTimeout]="timeout">
<h4 class="alert-heading">Well done!</h4>
<p>Success Message</p>
</alert>
<alert type="info">
<strong>Heads up!</strong> Info
</alert>
<alert type="warning">
<strong>Warning!</strong> Warning
</alert>
<alert type="danger">
<strong>Oh snap!</strong> Error
</alert>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
open: boolean = true;
dismissible: boolean = true;
timeout: number = 10000;
constructor() { }
ngOnInit(): void {
}
log(alert){
console.log('alert message closed');
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200 dan verifikasi keluaran berikut.
Tombol ngx-bootstrap memiliki dua arahan khusus yang membuat sekelompok tombol berperilaku sebagai kotak centang atau tombol radio atau hibrid di mana tombol radio tidak dapat dicentang.
ButtonCheckboxDirective
Tambahkan fungsionalitas kotak centang ke elemen apa pun.
pemilih
[btnCheckbox]
Masukan
btnCheckboxFalse - boolean, nilai Falsy, akan disetel ke ngModel, default: false
btnCheckboxTrue - boolean, nilai Truthy, akan disetel ke ngModel, default: true
ButtonRadioDirective
Buat tombol radio atau kelompok tombol. Nilai dari tombol yang dipilih terikat ke variabel yang ditentukan melalui ngModel.
pemilih
[btnRadio]
Masukan
btnRadio - string, nilai tombol Radio, akan disetel ke ngModel
disabled - boolean, Jika true - tombol radio dinonaktifkan
uncheckable - boolean, Jika benar - tombol radio tidak dapat dicentang
value - string, Nilai saat ini dari komponen atau grup radio
ButtonRadioGroupDirective
Sekelompok tombol radio. Nilai dari tombol yang dipilih terikat ke variabel yang ditentukan melalui ngModel.
pemilih
[btnRadioGroup]
Contoh
Karena kami akan menggunakan tombol, Kami telah memperbarui app.module.ts yang digunakan dalam bab Peringatan ngx-bootstrap untuk digunakan.ButtonsModule. Kami juga menambahkan dukungan untuk kontrol masukan menggunakan FormModule.
Perbarui app.module.ts untuk menggunakan AlertModule dan AlertConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule
],
providers: [AlertConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan tombol.
test.component.html
<button type="button" class="btn btn-primary" (click)="clicked()">
Single Button
</button>
<pre class="card card-block card-header">
{{clickCounter}}
</pre>
<p>Button as Checkbox</p>
<div class="btn-group">
<label class="btn btn-primary" [(ngModel)]="checkModel.left"
btnCheckbox tabindex="0" role="button">Left</label>
<label class="btn btn-primary" [(ngModel)]="checkModel.right"
btnCheckbox tabindex="0" role="button">Right</label>
</div>
<pre class="card card-block card-header">
{{checkModel | json}}
</pre>
<p>Button as RadionButton</p>
<div class="form-inline">
<div class="btn-group" btnRadioGroup [(ngModel)]="radioModel">
<label class="btn btn-success" btnRadio="Left">Left</label>
<label class="btn btn-success" btnRadio="Right">Right</label>
</div>
</div>
<pre class="card card-block card-header">
{{radioModel}}
</pre>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
checkModel = { left: false, right: false };
radioModel = 'Left';
clickCounter = 0;
constructor() { }
ngOnInit(): void {
}
clicked(): void {
this.clickCounter++;
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200 dan verifikasi keluaran berikut.
ngx-bootstrap Carousel digunakan untuk membuat tampilan slide gambar atau teks
CarouselComponent
Elemen dasar untuk membuat carousel.
pemilih
carousel
Masukan
activeSlide - angka, Indeks slide yang sedang ditampilkan (dimulai untuk 0)
indicatorsByChunk - boolean, default: false
interval- nomor, Penundaan siklus item dalam milidetik. Jika salah, carousel tidak akan berputar secara otomatis.
isAnimated- boolean, Hidupkan / matikan animasi. Animasi tidak berfungsi untuk carousel multilist, default: false
itemsPerSlide - nomor, default: 1
noPause - boolean
noWrap - boolean
pauseOnFocus - boolean
showIndicators - boolean
singleSlideOffset - boolean
startFromIndex - nomor, default: 0
Keluaran
activeSlideChange- Akan dipancarkan ketika slide aktif telah diubah. Bagian dari properti two-way-bindable [(activeSlide)]
slideRangeChange - Akan dipancarkan ketika slide aktif telah diubah dalam mode multilist
SlideComponent
pemilih
slide
Masukan
active - boolean, Apakah slide saat ini aktif
Contoh
Karena kami akan menggunakan carousel, Kami telah memperbarui app.module.ts yang digunakan dalam bab Tombol ngx-bootstrap untuk digunakan.CarouselModule.
Perbarui app.module.ts untuk menggunakan CarouselModule.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule
],
providers: [AlertConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan Korsel.
test.component.html
<div style="width: 500px; height: 500px;">
<carousel [noWrap]="noWrapSlides" [showIndicators]="showIndicator">
<slide *ngFor="let slide of slides; let index=index">
<img [src]="slide.image" alt="image slide" style="display: block; width: 100%;">
<div class="carousel-caption">
<h4>Slide {{index}}</h4>
<p>{{slide.text}}</p>
</div>
</slide>
</carousel>
<br/>
<div>
<div class="checkbox">
<label><input type="checkbox" [(ngModel)]="noWrapSlides">Disable Slide Looping</label>
<label><input type="checkbox" [(ngModel)]="showIndicator">Enable Indicator</label>
</div>
</div>
</div>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
import { CarouselConfig } from 'ngx-bootstrap/carousel';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
providers: [
{ provide: CarouselConfig, useValue: { interval: 1500, noPause: false, showIndicators: true } }
],
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
slides = [
{image: 'assets/images/nature/1.jpg', text: 'First'},
{image: 'assets/images/nature/2.jpg',text: 'Second'},
{image: 'assets/images/nature/3.jpg',text: 'Third'}
];
noWrapSlides = false;
showIndicator = true;
constructor() { }
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200 dan verifikasi keluaran berikut.
ngx-bootstrap Ciutkan direktif membantu menampilkan / menyembunyikan konten wadah.
CiutkanDirective
pemilih
[collapse]
Masukan
collapse - boolean, Bendera yang menunjukkan visibilitas konten (ditampilkan atau disembunyikan)
display - string
isAnimated- boolean, hidupkan / matikan animasi. default: salah
Keluaran
collapsed - Acara ini diaktifkan segera setelah konten ditutup
collapses - Acara ini aktif saat penciutan dimulai
expanded - Acara ini dijalankan segera setelah konten terlihat
expands - Peristiwa ini aktif saat ekspansi dimulai
Metode
toggle() - memungkinkan untuk mengubah visibilitas konten secara manual
hide - memungkinkan untuk menyembunyikan konten secara manual
show - memungkinkan untuk menampilkan konten yang diciutkan secara manual
Contoh
Karena kita akan menggunakan collapse, Kami telah memperbarui app.module.ts yang digunakan dalam bab Carousel ngx-bootstrap untuk digunakanCollapseModule.
Perbarui app.module.ts untuk menggunakan CiutkanModule.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule
],
providers: [AlertConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan Ciutkan.
test.component.html
<div>
<div class="checkbox">
<label><input type="checkbox" [(ngModel)]="isCollapsed">Collapse</label>
</div>
</div>
<div [collapse]="isCollapsed" [isAnimated]="true">
<div class="well well-lg card card-block card-header">Welcome to Tutorialspoint.</div>
</div>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
isCollapsed: boolean = false;
constructor() { }
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200 dan verifikasi keluaran berikut.
Centang kotak ciutkan, lalu konten akan diciutkan.
ngx-bootstrap Komponen DatePicker sangat dapat dikonfigurasi dan disesuaikan sesuai kebutuhan kita. Ini memberikan berbagai opsi untuk memilih tanggal atau rentang tanggal.
BsDatepickerDirective
pemilih
[bsDatepicker]
Masukan
bsConfig - Partial <BsDatepickerConfig>, objek Config untuk datepicker
bsValue - Tanggal, Nilai awal dari datepicker
container- string, Sebuah selector yang menentukan elemen datepicker yang harus ditambahkan. default: body
dateCustomClasses - DatepickerDateCustomClasses [], kelas kustom Tanggal
datesDisabled - Tanggal [], Nonaktifkan tanggal tertentu
datesEnabled - Tanggal [], Aktifkan tanggal tertentu
dateTooltipTexts - DatepickerDateTooltipText [], Teks tooltip tanggal
daysDisabled - number [], Nonaktifkan hari-hari tertentu dalam seminggu
isDisabled - boolean, Menunjukkan apakah konten datepicker diaktifkan atau tidak
isOpen - boolean, Mengembalikan apakah datepicker sedang ditampilkan atau tidak
maxDate - boolean, Tanggal maksimum yang tersedia untuk dipilih
minDate - boolean, Tanggal minimum yang tersedia untuk seleksi
minMode - BsDatepickerViewMode, Mode tampilan minimum: hari, bulan, atau tahun
outsideClick - boolean, Tutup datepicker saat klik luar, default: true
outsideEsc - boolean, Tutup datepicker pada klik escape, default: true
placement- "atas" | "bawah" | "kiri" | "benar", Penempatan pemilih data. Menerima: "top", "bottom", "left", "right", default: bottom
triggers- string, Menentukan peristiwa yang harus dipicu. Mendukung daftar nama acara yang dipisahkan spasi., Default: klik
Keluaran
bsValueChange - Dipancarkan saat nilai pemilih data telah diubah
onHidden - Memancarkan peristiwa saat datepicker disembunyikan
onShown - Memancarkan peristiwa saat datepicker ditampilkan
Metode
show()- Membuka datepicker elemen. Ini dianggap sebagai pemicu 'manual' dari pemilih data.
hide()- Menutup datepicker elemen. Ini dianggap sebagai pemicu 'manual' dari pemilih data.
toggle()- Mengalihkan pemilih data elemen. Ini dianggap sebagai pemicu 'manual' dari pemilih data.
setConfig() - Atur konfigurasi untuk pemilih data
BsDaterangepickerDirective
pemilih
[bsDaterangepicker]
Masukan
bsConfig - Partial <BsDaterangepickerConfig>, objek Config untuk daterangepicker
bsValue - Tanggal, Nilai awal daterangepicker
container- string, Sebuah selector yang menentukan elemen yang harus ditambahkan ke daterangepicker. default: body
dateCustomClasses - DatepickerDateCustomClasses [], kelas kustom Tanggal
datesDisabled - Tanggal [], Nonaktifkan tanggal tertentu
datesEnabled - Tanggal [], Aktifkan tanggal tertentu
dateTooltipTexts - DatepickerDateTooltipText [], Teks tooltip tanggal
daysDisabled - number [], Nonaktifkan hari-hari tertentu dalam seminggu
isDisabled - boolean, Menunjukkan apakah konten daterangepicker diaktifkan atau tidak
isOpen - boolean, Mengembalikan apakah daterangepicker sedang ditampilkan atau tidak
maxDate - boolean, Tanggal maksimum yang tersedia untuk dipilih
minDate - boolean, Tanggal minimum yang tersedia untuk seleksi
minMode - BsDatepickerViewMode, Mode tampilan minimum: hari, bulan, atau tahun
outsideClick - boolean, Tutup daterangepicker pada klik luar, default: true
outsideEsc - boolean, Tutup daterangepicker saat klik escape, default: true
placement- "atas" | "bawah" | "kiri" | "benar", Penempatan daterangepicker. Menerima: "top", "bottom", "left", "right", default: bottom
triggers- string, Menentukan peristiwa yang harus dipicu. Mendukung daftar nama acara yang dipisahkan spasi., Default: klik
Keluaran
bsValueChange - Dipancarkan saat nilai daterangepicker telah diubah
onHidden - Memancarkan peristiwa saat daterangepicker disembunyikan
onShown - Memancarkan peristiwa saat penanda waktu ditampilkan
Metode
show()- Membuka datepicker elemen. Ini dianggap sebagai pemicu 'manual' dari pemilih data.
hide()- Menutup datepicker elemen. Ini dianggap sebagai pemicu 'manual' dari pemilih data.
toggle()- Mengalihkan pemilih data elemen. Ini dianggap sebagai pemicu 'manual' dari pemilih data.
setConfig() - Atur konfigurasi untuk pemilih data
Contoh
Karena kita akan menggunakan DatePicker dan DateRangePicker, kita telah memperbarui app.module.ts yang digunakan dalam ngx-bootstrap Ciutkan bab untuk digunakan.BsDatepickerModule dan BsDatepickerConfig.
Perbarui app.module.ts untuk menggunakan BsDatepickerModule dan BsDatepickerConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot()
],
providers: [AlertConfig, BsDatepickerConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui index.html untuk menggunakan bs-datepicker.css.
app.module.ts
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Ngxbootstrap</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet">
<link href="https://unpkg.com/ngx-bootstrap/datepicker/bs-datepicker.css" rel="stylesheet" >
</head>
<body>
<app-root></app-root>
</body>
</html>
Perbarui test.component.html untuk menggunakan datepickers.
test.component.html
<div class="row">
<div class="col-xs-12 col-12 col-md-4 form-group">
<input type="text"
placeholder="Datepicker"
class="form-control"
bsDatepicker
[bsValue]="bsValue"
[minDate]="minDate"
[maxDate]="maxDate"
[daysDisabled]="[6,0]"
[datesDisabled]="disabledDates"
[bsConfig]="{ isAnimated: true, dateInputFormat: 'YYYY-MM-DD' }">
</div>
<div class="col-xs-12 col-12 col-md-4 form-group">
<input type="text"
placeholder="Daterangepicker"
class="form-control"
bsDaterangepicker
[(ngModel)]="bsRangeValue"
[datesEnabled]="enabledDates"
[bsConfig]="{ isAnimated: true }">
</div>
</div>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
bsValue = new Date();
bsRangeValue: Date[];
maxDate = new Date();
minDate = new Date();
constructor() {
this.minDate.setDate(this.minDate.getDate() - 1);
this.maxDate.setDate(this.maxDate.getDate() + 7);
this.bsRangeValue = [this.bsValue, this.maxDate];
}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200 dan verifikasi keluaran berikut.
ngx-bootstrap komponen dropdown dapat diubah dan menyediakan overlay kontekstual untuk menampilkan daftar link dll. Dengan perintah dropdown kita dapat membuat dropdown menjadi interaktif.
BsDropdownDirective
pemilih
[bsDropdown],[dropdown]
Masukan
autoClose - boolean, Menunjukkan bahwa dropdown akan ditutup pada item atau klik dokumen, dan setelah menekan ESC
container - string, selektor yang menentukan elemen popover yang harus ditambahkan.
dropup - boolean, Atribut ini menunjukkan bahwa dropdown harus dibuka ke atas.
insideClick - boolean, Atribut ini menunjukkan bahwa dropdown seharusnya tidak menutup di dalam klik ketika autoClose disetel ke true.
isAnimated - boolean, Menunjukkan bahwa dropdown akan dianimasikan
isDisabled - boolean, Nonaktifkan toggle dropdown dan sembunyikan menu dropdown jika dibuka
isOpen - boolean, Mengembalikan apakah popover sedang ditampilkan atau tidak
placement- string, Penempatan popover. Menerima: "top", "bottom", "left", "right"
triggers- string, Menentukan peristiwa yang harus dipicu. Mendukung daftar nama acara yang dipisahkan spasi.
Keluaran
isOpenChange - Memancarkan acara saat perubahan isOpen
onHidden - Memancarkan acara saat popover disembunyikan
onShown - Memancarkan acara saat popover ditampilkan
Metode
show()- Membuka popover elemen. Ini dianggap sebagai pemicu 'manual' dari popover.
hide()- Menutup popover elemen. Ini dianggap sebagai pemicu 'manual' dari popover.
toggle()- Mengalihkan popover elemen. Ini dianggap sebagai pemicu 'manual' dari popover.
setConfig() - Atur konfigurasi untuk popover
Contoh
Karena kita akan menggunakan dropdown, Kami telah memperbarui app.module.ts yang digunakan dalam ngx-bootstrap chapter DatePicker untuk digunakan.BsDropdownModule dan BsDropdownConfig.
Perbarui app.module.ts untuk menggunakan BsDropdownModule dan BsDropdownConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule
],
providers: [AlertConfig, BsDatepickerConfig, BsDropdownConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan tarik-turun.
test.component.html
<div class="btn-group" dropdown #dropdown="bs-dropdown" [autoClose]="false">
<button id="button-basic" dropdownToggle type="button"
class="btn btn-primary dropdown-toggle"
aria-controls="dropdown-basic">
Menu <span class="caret"></span>
</button>
<ul id="dropdown-basic" *dropdownMenu class="dropdown-menu"
role="menu" aria-labelledby="button-basic">
<li role="menuitem"><a class="dropdown-item" href="#">File</a></li>
<li role="menuitem"><a class="dropdown-item" href="#">Edit</a></li>
<li role="menuitem"><a class="dropdown-item" href="#">Search</a></li>
<li class="divider dropdown-divider"></li>
<li role="menuitem"><a class="dropdown-item" href="#">Recents</a>
</li>
</ul>
</div>
<button type="button" class="btn btn-primary"
(click)="dropdown.isOpen = !dropdown.isOpen">Show/Hide
</button>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
constructor() {}
ngOnInit(): void {}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200 dan verifikasi keluaran berikut.
komponen modal ngx-bootstrap adalah prompt dialog yang fleksibel dan sangat dapat dikonfigurasi dan menyediakan beberapa default dan dapat digunakan dengan kode minimum.
ModalDirective
pemilih
[bsModal]
Masukan
config - ModalOptions, memungkinkan untuk mengatur konfigurasi modal melalui properti elemen
Keluaran
onHidden - Peristiwa ini dijalankan ketika modal telah selesai disembunyikan dari pengguna (akan menunggu transisi CSS selesai).
onHide - Peristiwa ini dijalankan segera ketika metode instans sembunyikan telah dipanggil.
onShow - Peristiwa ini langsung aktif ketika metode contoh acara dipanggil.
onShown - Peristiwa ini dijalankan ketika modal telah dibuat terlihat oleh pengguna (akan menunggu transisi CSS selesai).
Metode
show() - Memungkinkan untuk membuka modal secara manual.
hide() - Memungkinkan untuk menutup modal secara manual.
toggle() - Memungkinkan untuk mengubah visibilitas modal secara manual.
showElement() - Tampilkan dialog.
focusOtherModal() - Trik acara.
Contoh
Karena kita akan menggunakan modal, Kami telah memperbarui app.module.ts yang digunakan dalam bab Dropdowns ngx-bootstrap untuk digunakan.ModalModule dan BsModalService.
Perbarui app.module.ts untuk menggunakan ModalModule dan BsModalService.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { ModalModule, BsModalService } from 'ngx-bootstrap/modal';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule
],
providers: [AlertConfig, BsDatepickerConfig, BsDropdownConfig,BsModalService],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan modal.
test.component.html
<button type="button" class="btn btn-primary" (click)="openModal(template)">Open modal</button>
<ng-template #template>
<div class="modal-header">
<h4 class="modal-title pull-left">Modal</h4>
<button type="button" class="close pull-right" aria-label="Close" (click)="modalRef.hide()">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
This is a sample modal dialog box.
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" (click)="modalRef.hide()">Close</button>
</div>
</ng-template>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit, TemplateRef } from '@angular/core';
import { BsModalRef, BsModalService } from 'ngx-bootstrap/modal';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
modalRef: BsModalRef;
constructor(private modalService: BsModalService) {}
openModal(template: TemplateRef<any>) {
this.modalRef = this.modalService.show(template);
}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.
ngx-bootstrap komponen pagination menyediakan link pagination atau komponen pager ke situs atau komponen Anda.
PaginationComponent
pemilih
pagination
Masukan
align - boolean, jika true meratakan setiap link ke sisi halaman
boundaryLinks - boolean, jika salah tombol pertama dan terakhir akan disembunyikan
customFirstTemplate - TemplateRef <PaginationLinkContext>, template kustom untuk link pertama
customLastTemplate - TemplateRef <PaginationLinkContext>, template kustom untuk link terakhir
customNextTemplate - TemplateRef <PaginationLinkContext>, template kustom untuk link berikutnya
customPageTemplate - TemplateRef <PaginationLinkContext>, template kustom untuk link halaman
customPreviousTemplate - TemplateRef <PaginationLinkContext>, template kustom untuk link sebelumnya
directionLinks - boolean, jika salah tombol sebelumnya dan berikutnya akan disembunyikan
disabled - boolean, jika komponen pagination benar akan dinonaktifkan
firstText - boolean, teks tombol pertama
itemsPerPage- jumlah, jumlah item maksimum per halaman. Jika nilainya kurang dari 1 akan menampilkan semua item dalam satu halaman
lastText - string, teks tombol terakhir
maxSize - nomor, jumlah batas untuk link halaman di pager
nextText - string, teks tombol berikutnya
pageBtnClass - string, tambahkan kelas ke <li>
previousText - string, teks tombol sebelumnya
rotate - boolean, jika benar halaman saat ini akan berada di tengah daftar halaman
totalItems - jumlah, jumlah item di semua halaman
Keluaran
numPages - diaktifkan saat jumlah halaman berubah, $ event: number sama dengan jumlah halaman total.
pageChanged - diaktifkan ketika halaman diubah, $ event: {page, itemsPerPage} sama dengan objek dengan indeks halaman saat ini dan jumlah item per halaman.
Contoh
Karena kita akan menggunakan pagination, Kami telah memperbarui app.module.ts yang digunakan dalam bab Modals ngx-bootstrap untuk digunakan.PaginationModule dan PaginationConfig.
Perbarui app.module.ts untuk menggunakan PaginationModule dan PaginationConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan modal.
test.component.html
<div class="row">
<div class="col-xs-12 col-12">
<div class="content-wrapper">
<p class="content-item" *ngFor="let content of returnedArray">{{content}}</p>
</div>
<pagination [boundaryLinks]="showBoundaryLinks"
[directionLinks]="showDirectionLinks"
[totalItems]="contentArray.length"
[itemsPerPage]="5"
(pageChanged)="pageChanged($event)"></pagination>
</div>
</div>
<div>
<div class="checkbox">
<label><input type="checkbox" [(ngModel)]="showBoundaryLinks">Show Boundary Links</label>
<br/>
<label><input type="checkbox" [(ngModel)]="showDirectionLinks">Show Direction Links</label>
</div>
</div>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
import { BsModalService } from 'ngx-bootstrap/modal';
import { PageChangedEvent } from 'ngx-bootstrap/pagination';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
contentArray: string[] = new Array(50).fill('');
returnedArray: string[];
showBoundaryLinks: boolean = true;
showDirectionLinks: boolean = true;
constructor() {}
pageChanged(event: PageChangedEvent): void {
const startItem = (event.page - 1) * event.itemsPerPage;
const endItem = event.page * event.itemsPerPage;
this.returnedArray = this.contentArray.slice(startItem, endItem);
}
ngOnInit(): void {
this.contentArray = this.contentArray.map((v: string, i: number) => {
return 'Line '+ (i + 1);
});
this.returnedArray = this.contentArray.slice(0, 5);
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.
ngx-bootstrap popover component menyediakan komponen overlay kecil untuk memberikan informasi kecil tentang sebuah komponen.
PopoverDirective
pemilih
popover
Masukan
adaptivePosition - boolean, set menonaktifkan posisi adaptif.
container - string, selektor yang menentukan elemen popover yang harus ditambahkan.
containerClass - string, kelas Css untuk wadah popover
delay - angka, Tunda sebelum menampilkan tooltip
isOpen - boolean, Mengembalikan apakah popover sedang ditampilkan atau tidak
outsideClick - boolean, Tutup popover pada klik luar, default: false
placement- "atas" | "bawah" | "kiri" | "benar" | "otomatis" | "kiri atas" | "kanan atas" | "kanan atas" | "kanan bawah" | "kanan bawah" | "kiri bawah" | "kiri bawah" | "left top", Penempatan popover. Menerima: "top", "bottom", "left", "right".
popover- string | TemplateRef <any>, Konten akan ditampilkan sebagai popover.
popoverContext - apapun, Konteks yang akan digunakan jika popover adalah sebuah template.
popoverTitle - string, Judul popover.
triggers- string, Menentukan peristiwa yang harus dipicu. Mendukung daftar nama acara yang dipisahkan spasi.
Keluaran
onHidden - Memancarkan acara saat popover disembunyikan.
onShown - Memancarkan acara saat popover ditampilkan.
Metode
setAriaDescribedBy() - Set atribut aria-deseskripsiBy untuk direktif elemen dan set id untuk popover.
show()- Membuka popover elemen. Ini dianggap sebagai pemicu "manual" dari popover.
hide()- Menutup popover elemen. Ini dianggap sebagai pemicu "manual" dari popover.
toggle()- Mengalihkan popover elemen. Ini dianggap sebagai pemicu "manual" dari popover.
Contoh
Karena kita akan menggunakan popover, Kami telah memperbarui app.module.ts yang digunakan dalam bab Pagination ngx-bootstrap untuk digunakan.PopoverModule dan PopoverConfig.
Perbarui app.module.ts untuk menggunakan PopoverModule dan PopoverConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan modal.
test.component.html
<button type="button" class="btn btn-default btn-primary"
popover="Welcome to Tutorialspoint." [outsideClick]="true">
Default Popover
</button>
<button type="button" class="btn btn-default btn-primary"
popover="Welcome to Tutorialspoint."
popoverTitle="Tutorialspoint"
[outsideClick]="true"
placement="right">
Right Aligned popover
</button>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
import { BsModalService } from 'ngx-bootstrap/modal';
import { PageChangedEvent } from 'ngx-bootstrap/pagination';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.
ngx-bootstrap progress bar komponen menyediakan komponen kemajuan untuk menunjukkan kemajuan alur kerja dengan bar fleksibel.
ProgressbarComponent
pemilih
progressbar
Masukan
animate - boolean, jika nilai progress bar yang berubah benar akan dianimasikan.
max - angka, nilai total maksimum dari elemen kemajuan.
striped - boolean, Jika true, kelas bergaris diterapkan.
type - ProgressbarType, sediakan salah satu dari empat kelas kontekstual yang didukung: sukses, info, peringatan, bahaya.
value- nomor | apapun [], nilai progress bar saat ini. Bisa berupa jumlah atau larik objek seperti {"value": 15, "type": "info", "label": "15%"}.
Contoh
Karena kita akan menggunakan progressbar, Kami telah memperbarui app.module.ts yang digunakan dalam bab Popover ngx-bootstrap untuk digunakan.ProgressbarModule dan ProgressbarConfig.
Perbarui app.module.ts untuk menggunakan ProgressbarModule dan ProgressbarConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
import { ProgressbarModule,ProgressbarConfig } from 'ngx-bootstrap/progressbar';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule,
ProgressbarModule
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig,
ProgressbarConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan modal.
test.component.html
<div class="row">
<div class="col-sm-4">
<div class="mb-2">
<progressbar [value]="value"></progressbar>
</div>
</div>
<div class="col-sm-4">
<div class="mb-2">
<progressbar [value]="value" type="warning"
[striped]="true">{{value}}%</progressbar>
</div>
</div>
<div class="col-sm-4">
<div class="mb-2">
<progressbar [value]="value" type="danger"
[striped]="true" [animate]="true"
><i>{{value}} / {{max}}</i></progressbar>
</div>
</div>
</div>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
max: number = 100;
value: number = 25;
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200.
ngx-bootstrap rating komponen menyediakan komponen rating yang dapat dikonfigurasi, bilah bintang secara default.
RatingComponent
pemilih
rating
Masukan
customTemplate - TemplateRef <any>, template kustom untuk ikon.
max- nomor, tidak. ikon, default: 5.
readonly - boolean, jika true tidak akan bereaksi pada kejadian pengguna manapun.
titles - string [], larik judul ikon, default: ([1, 2, 3, 4, 5])
Keluaran
onHover - diaktifkan saat ikon dipilih, $ event: angka sama dengan peringkat yang dipilih.
onLeave - diaktifkan saat ikon dipilih, $ event: angka sama dengan nilai peringkat sebelumnya.
Contoh
Karena kami akan menggunakan peringkat, Kami telah memperbarui app.module.ts yang digunakan dalam bab ProgressBar ngx-bootstrap untuk menggunakanRatingModule, RatingConfig.
Perbarui app.module.ts untuk menggunakan RatingModule dan RatingConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
import { ProgressbarModule,ProgressbarConfig } from 'ngx-bootstrap/progressbar';
import { RatingModule, RatingConfig } from 'ngx-bootstrap/rating';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule,
ProgressbarModule,
RatingModule
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig,
ProgressbarConfig,
RatingConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan peringkat.
test.component.html
<rating [(ngModel)]="value"
[max]="max"
[readonly]="false"
[titles]="['one','two','three','four']"></rating>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
max: number = 10;
value: number = 5;
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.
ngx-bootstrap sortable component menyediakan komponen yang dapat diurutkan, dengan dukungan drag drop.
SortableComponent
pemilih
bs-sortable
Masukan
fieldName - string, nama field jika input array terdiri dari objek.
itemActiveClass - string, nama kelas untuk item aktif.
itemActiveStyle- {[kunci: string]: string; }, gaya objek untuk item aktif.
itemClass - string, nama kelas untuk item
itemStyle - string, nama kelas untuk item
itemTemplate- TemplateRef <any>, digunakan untuk menentukan template item kustom. Variabel template: item dan indeks;
placeholderClass - string, nama kelas untuk placeholder
placeholderItem - string, item placeholder yang akan ditampilkan jika koleksi kosong
placeholderStyle - string, objek gaya untuk placeholder
wrapperClass - string, nama kelas untuk item pembungkus
wrapperStyle- {[kunci: string]: string; }, objek gaya untuk pembungkus item
Keluaran
onChange- diaktifkan pada perubahan array (menyusun ulang, menyisipkan, menghapus), sama seperti ngModelChange. Mengembalikan koleksi item baru sebagai payload.
Contoh
Karena kami akan menggunakan sortable, Kami telah memperbarui app.module.ts yang digunakan dalam bab Rating ngx-bootstrap untuk digunakanSortableModule dan DraggableItemService.
Perbarui app.module.ts untuk menggunakan SortableModule dan DraggableItemService.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
import { ProgressbarModule,ProgressbarConfig } from 'ngx-bootstrap/progressbar';
import { RatingModule, RatingConfig } from 'ngx-bootstrap/rating';
import { SortableModule, DraggableItemService } from 'ngx-bootstrap/sortable';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule,
ProgressbarModule,
RatingModule,
SortableModule
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig,
ProgressbarConfig,
RatingConfig,
DraggableItemService],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui styles.css untuk menggunakan gaya untuk komponen yang dapat diurutkan.
Styles.css
.sortableItem {
padding: 6px 12px;
margin-bottom: 4px;
font-size: 14px;
line-height: 1.4em;
text-align: center;
cursor: grab;
border: 1px solid transparent;
border-radius: 4px;
border-color: #adadad;
}
.sortableItemActive {
background-color: #e6e6e6;
box-shadow: inset 0 3px 5px rgba(0,0,0,.125);
}
.sortableWrapper {
min-height: 150px;
}
Perbarui test.component.html untuk menggunakan komponen yang dapat diurutkan.
test.component.html
<bs-sortable
[(ngModel)]="items"
fieldName="name"
itemClass="sortableItem"
itemActiveClass="sortableItemActive"
wrapperClass="sortableWrapper">
</bs-sortable>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
items = [
{
id: 1,
name: 'Apple'
},
{
id: 2,
name: 'Orange'
},
{
id: 3,
name: 'Mango'
}
];
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200.
Komponen tab ngx-bootstrap menyediakan komponen Tab yang mudah digunakan dan sangat dapat dikonfigurasi.
TabsetComponent
pemilih
tabset
Masukan
justified - boolean, jika tab yang benar mengisi wadah dan memiliki lebar yang konsisten.
type - string, kelas konteks navigasi: 'tab' atau 'pil'.
vertical - jika tab yang benar akan ditempatkan secara vertikal.
TabDirective
pemilih
tab, [tab]
Masukan
active - boolean, tab beralih status aktif.
customClass- string, jika disetel, akan ditambahkan ke atribut kelas tab. Beberapa kelas didukung.
disabled - boolean, jika tab benar tidak dapat diaktifkan.
heading - string, teks header tab.
id- string, id tab. Id yang sama dengan akhiran '-link' akan ditambahkan ke ID yang sesuai
- element.
removable - boolean, jika tab benar bisa dilepas, tombol tambahan akan muncul.
Keluaran
deselect - diaktifkan ketika tab menjadi tidak aktif, $ event: Tab sama dengan contoh komponen Tab yang tidak dipilih.
removed - diaktifkan sebelum tab akan dihapus, $ event: Tab sama dengan kemunculan tab yang dihapus.
selectTab - diaktifkan ketika tab menjadi aktif, $ event: Tab sama dengan contoh komponen Tab yang dipilih.
Contoh
Karena kita akan menggunakan Tab, Kami telah memperbarui app.module.ts yang digunakan dalam ngx-bootstrap bab Sortable untuk digunakanTabsModule dan TabsetConfig.
Perbarui app.module.ts untuk menggunakan TabsModule dan TabsetConfig.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
import { ProgressbarModule,ProgressbarConfig } from 'ngx-bootstrap/progressbar';
import { RatingModule, RatingConfig } from 'ngx-bootstrap/rating';
import { SortableModule, DraggableItemService } from 'ngx-bootstrap/sortable';
import { TabsModule, TabsetConfig } from 'ngx-bootstrap/tabs';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule,
ProgressbarModule,
RatingModule,
SortableModule,
TabsModule
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig,
ProgressbarConfig,
RatingConfig,
DraggableItemService,
TabsetConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan komponen tab.
test.component.html
<tabset>
<tab heading="Home">Home</tab>
<tab *ngFor="let tabz of tabs"
[heading]="tabz.title"
[active]="tabz.active"
(selectTab)="tabz.active = true"
[disabled]="tabz.disabled">
{{tabz?.content}}
</tab>
</tabset>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
tabs = [
{ title: 'First', content: 'First Tab Content' },
{ title: 'Second', content: 'Second Tab Content', active: true },
{ title: 'Third', content: 'Third Tab Content', removable: true },
{ title: 'Four', content: 'Fourth Tab Content', disabled: true }
];
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.
ngx-bootstrap timepicker component menyediakan komponen Time Picker yang mudah digunakan dan sangat dapat dikonfigurasi.
TimepickerComponent
pemilih
timepicker
Masukan
arrowkeys - boolean, jika benar nilai jam dan menit dapat diubah menggunakan tombol panah atas / bawah pada keyboard.
disabled - boolean, jika kolom jam dan menit yang sebenarnya akan dinonaktifkan.
hoursPlaceholder - string, placeholder untuk bidang jam di pemilih waktu.
hourStep - jumlah, jam perubahan langkah.
max - Tanggal, waktu maksimum yang dapat dipilih pengguna.
meridians - string [], label meridian berdasarkan lokal.
min - Tanggal, waktu minimum yang dapat dipilih pengguna.
minutesPlaceholder - string, placeholder untuk bidang menit di pemilih waktu.
minuteStep - jumlah, jam perubahan langkah.
mousewheel - boolean, jika benar gulir di dalam jam dan menit masukan akan mengubah waktu.
readonlyInput - boolean, jika kolom jam dan menit yang sebenarnya hanya akan dibaca.
secondsPlaceholder - string, placeholder untuk bidang detik di pemilih waktu.
secondsStep - angka, detik mengubah langkah.
showMeridian - boolean, jika tombol meridian benar akan ditampilkan.
showMinutes - boolean, tunjukkan menit di pemilih waktu.
showSeconds - boolean, tampilkan detik di pemilih waktu.
showSpinners - boolean, jika panah pemintal sejati di atas dan di bawah, input akan ditampilkan.
Keluaran
isValid - memancarkan true jika nilainya adalah tanggal yang valid.
Contoh
Karena kita akan menggunakan TimePicker, Kita harus memperbarui app.module.ts yang digunakan dalam bab Tab ngx-bootstrap untuk digunakan.TimepickerModule.
Perbarui app.module.ts untuk menggunakan TimepickerModule.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
import { ProgressbarModule,ProgressbarConfig } from 'ngx-bootstrap/progressbar';
import { RatingModule, RatingConfig } from 'ngx-bootstrap/rating';
import { SortableModule, DraggableItemService } from 'ngx-bootstrap/sortable';
import { TabsModule, TabsetConfig } from 'ngx-bootstrap/tabs';
import { TimepickerModule } from 'ngx-bootstrap/timepicker';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule,
ProgressbarModule,
RatingModule,
SortableModule,
TabsModule,
TimepickerModule.forRoot()
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig,
ProgressbarConfig,
RatingConfig,
DraggableItemService,
TabsetConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan komponen timepicker.
test.component.html
<timepicker [(ngModel)]="time"></timepicker>
<pre class="alert alert-info">Time is: {{time}}</pre>
<timepicker [(ngModel)]="time" [showMeridian]="false"></timepicker>
<pre class="alert alert-info">Time is: {{time}}</pre>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
time: Date = new Date();
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.
komponen tooltip ngx-bootstrap menyediakan komponen Tooltip yang mudah digunakan dan sangat dapat dikonfigurasi.
TooltipDirective
pemilih
[tooltip], [tooltipHtml]
Masukan
adaptivePosition - boolean, set menonaktifkan posisi adaptif.
container - string, Selektor yang menentukan elemen tooltip yang harus ditambahkan.
containerClass - string, kelas Css untuk penampung tooltip.
delay - angka, Tunda sebelum menampilkan tooltip.
isDisabled - boolean, Memungkinkan untuk menonaktifkan tooltip.
isOpen - boolean, Mengembalikan apakah tooltip sedang ditampilkan atau tidak.
placement- string, Penempatan tooltip. Menerima: "top", "bottom", "left", "right".
tooltip- string | TemplateRef <any>, Konten akan ditampilkan sebagai tooltip.
tooltipAnimation - boolean, default: true.
tooltipAppendToBody - boolean.
tooltipClass - string.
tooltipContext - apapun.
tooltipEnable - boolean.
tooltipFadeDuration - nomor, default: 150.
tooltipHtml- string | TemplateRef <any>.
tooltipIsOpen - boolean.
tooltipPlacement - string
tooltipPopupDelay - nomor
tooltipTrigger- string | tali[]
triggers- string, Menentukan peristiwa yang harus dipicu. Mendukung daftar nama acara yang dipisahkan spasi.
Keluaran
onHidden - Memancarkan peristiwa saat tooltip disembunyikan.
onShown - Memancarkan peristiwa saat tooltip ditampilkan.
tooltipChange - Diaktifkan saat konten tooltip berubah.
tooltipStateChanged - Diaktifkan saat status tooltip berubah.
Contoh
Karena kita akan menggunakan Tooltip, Kita telah memperbarui app.module.ts yang digunakan dalam bab TimePicker ngx-bootstrap untuk digunakan.TooltipModule.
Perbarui app.module.ts untuk menggunakan TooltipModule.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
import { ProgressbarModule,ProgressbarConfig } from 'ngx-bootstrap/progressbar';
import { RatingModule, RatingConfig } from 'ngx-bootstrap/rating';
import { SortableModule, DraggableItemService } from 'ngx-bootstrap/sortable';
import { TabsModule, TabsetConfig } from 'ngx-bootstrap/tabs';
import { TimepickerModule } from 'ngx-bootstrap/timepicker';
import { TooltipModule } from 'ngx-bootstrap/tooltip';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule,
ProgressbarModule,
RatingModule,
SortableModule,
TabsModule,
TimepickerModule.forRoot(),
TooltipModule.forRoot()
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig,
ProgressbarConfig,
RatingConfig,
DraggableItemService,
TabsetConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan komponen timepicker.
test.component.html
<timepicker [(ngModel)]="time"></timepicker>
<pre class="alert alert-info">Time is: {{time}}</pre>
<timepicker [(ngModel)]="time" [showMeridian]="false"></timepicker>
<pre class="alert alert-info">Time is: {{time}}</pre>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
time: Date = new Date();
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.
ngx-bootstrap Typeahead direktif menyediakan komponen Typeahead yang mudah digunakan dan sangat dapat dikonfigurasi dan digunakan.
TypeaheadDirective
pemilih
[typeahead]
Masukan
adaptivePosition - boolean, set menggunakan posisi adaptif.
container - string, Selektor yang menentukan elemen yang harus ditambahkan ke kepala jenis.
dropup - boolean, Atribut ini menunjukkan bahwa dropdown harus dibuka ke atas, default: false.
isAnimated - boolean, hidupkan / matikan animasi, default: false.
optionsListTemplate- TemplateRef <TypeaheadOptionListContext>, digunakan untuk menentukan template daftar opsi kustom. Variabel template: cocok, itemTemplate, query.
typeahead - Typeahead, sumber opsi, dapat berupa Array string, objek, atau Observable untuk proses pencocokan eksternal.
typeaheadAsync- boolean, sebaiknya digunakan hanya dalam kasus atribut typeahead adalah Observable of array. Jika benar - pemuatan opsi akan asinkron, jika tidak - sinkronkan. benar masuk akal jika array opsi besar.
typeaheadGroupField - string, jika sumber opsi adalah larik objek, nama bidang yang berisi nilai grup, cocok dikelompokkan berdasarkan bidang ini saat disetel.
typeaheadHideResultsOnBlur - boolean, digunakan untuk menyembunyikan hasil buram.
typeaheadIsFirstItemActive- boolean, mengaktifkan item pertama dalam daftar. Default: benar.
typeaheadItemTemplate- TemplateRef <TypeaheadOptionItemContext>, digunakan untuk menentukan template item kustom. Variabel template yang diekspos disebut item dan indeks.
typeaheadLatinize- boolean, cocokkan simbol latin. Jika benar kata súper akan cocok dengan super dan sebaliknya. Default: benar.
typeaheadMinLength- angka, minimal tidak ada karakter yang perlu dimasukkan sebelum kepala jenis dimulai. Saat disetel ke 0, typeahead ditampilkan dalam fokus dengan daftar lengkap opsi (dibatasi seperti biasa oleh typeaheadOptionsLimit)
typeaheadMultipleSearch- boolean, Dapat digunakan untuk melakukan pencarian beberapa item dan memiliki saran bukan untuk seluruh nilai input tetapi untuk nilai yang muncul setelah pembatas yang disediakan melalui atribut typeaheadMultipleSearchDelimiters. Opsi ini hanya dapat digunakan bersama dengan opsi typeaheadSingleWords jika typeaheadWordDelimiters dan typeaheadPhraseDelimiters berbeda dari typeaheadMultipleSearchDelimiters untuk menghindari konflik dalam menentukan kapan harus membatasi beberapa pencarian dan kapan satu kata.
typeaheadMultipleSearchDelimiters- string, sebaiknya digunakan hanya jika atribut typeaheadMultipleSearch benar. Menetapkan beberapa pembatas pencarian untuk mengetahui kapan harus memulai pencarian baru. Defaultnya adalah koma. Jika spasi perlu digunakan, setel typeaheadWordDelimiters ke sesuatu selain spasi karena spasi digunakan secara default ATAU setel atribut typeaheadSingleWords ke false jika Anda tidak perlu menggunakannya bersama dengan banyak pencarian.
typeaheadOptionField- string, jika sumber opsi adalah larik objek, nama bidang yang berisi nilai opsi, kami menggunakan item larik sebagai opsi jika bidang ini hilang. Mendukung properti dan metode bertingkat.
typeaheadOptionsInScrollableView - angka, Nilai default: 5, menentukan jumlah opsi untuk ditampilkan dalam tampilan gulir
typeaheadOptionsLimit- nomor, panjang maksimum daftar item opsi. Nilai defaultnya adalah 20.
typeaheadOrderBy- TypeaheadOrder, Digunakan untuk menentukan urutan pertandingan khusus. Ketika sumber opsi adalah larik objek, bidang untuk penyortiran harus disiapkan. Jika sumber opsi adalah larik string, bidang untuk penyortiran tidak ada. Arah pemesanan bisa diubah menjadi ascending atau descending.
typeaheadPhraseDelimiters- string, sebaiknya digunakan hanya jika atribut typeaheadSingleWords benar. Menyetel pembatas kata agar sama persis dengan frasa. Defaultnya adalah kutipan sederhana dan ganda.
typeaheadScrollable - boolean, Nilai default: false, menentukan apakah typeahead dapat di-scroll
typeaheadSelectFirstItem - boolean, Nilai default: benar, diaktifkan ketika daftar opsi dibuka dan pengguna mengklik Tab Jika nilai sama dengan benar, itu akan dipilih item pertama atau aktif dalam daftar Jika nilainya sama dengan salah, itu akan dipilih item aktif di daftar atau tidak sama sekali
typeaheadSingleWords - boolean, Nilai default: true, Dapat digunakan untuk mencari kata dengan memasukkan satu spasi di antara setiap karakter, misalnya 'C alifornia' akan cocok dengan 'California'.
typeaheadWaitMs - angka, waktu tunggu minimal setelah karakter terakhir diketik sebelum kepala ketik dimulai
typeaheadWordDelimiters- string, sebaiknya digunakan hanya jika atribut typeaheadSingleWords benar. Mengatur pembatas kata untuk memisahkan kata. Default ke luar angkasa.
Keluaran
typeaheadLoading - diaktifkan ketika status 'sibuk' komponen ini diubah, diaktifkan hanya pada mode asinkron, mengembalikan boolean.
typeaheadNoResults - diaktifkan pada setiap peristiwa penting dan mengembalikan nilai true jika kecocokan tidak terdeteksi.
typeaheadOnBlur- dipecat saat peristiwa blur terjadi. mengembalikan item aktif.
typeaheadOnSelect - diaktifkan saat opsi dipilih, kembalikan objek dengan data opsi ini.
Contoh
Karena kita akan menggunakan Typeahead, Kita telah memperbarui app.module.ts yang digunakan dalam bab Timepicker ngx-bootstrap untuk digunakan.TypeaheadModule.
Perbarui app.module.ts untuk menggunakan TypeaheadModule.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import { TestComponent } from './test/test.component';
import { AccordionModule } from 'ngx-bootstrap/accordion';
import { AlertModule,AlertConfig } from 'ngx-bootstrap/alert';
import { ButtonsModule } from 'ngx-bootstrap/buttons';
import { FormsModule } from '@angular/forms';
import { CarouselModule } from 'ngx-bootstrap/carousel';
import { CollapseModule } from 'ngx-bootstrap/collapse';
import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule,BsDropdownConfig } from 'ngx-bootstrap/dropdown';
import { PaginationModule,PaginationConfig } from 'ngx-bootstrap/pagination';
import { PopoverModule, PopoverConfig } from 'ngx-bootstrap/popover';
import { ProgressbarModule,ProgressbarConfig } from 'ngx-bootstrap/progressbar';
import { RatingModule, RatingConfig } from 'ngx-bootstrap/rating';
import { SortableModule, DraggableItemService } from 'ngx-bootstrap/sortable';
import { TabsModule, TabsetConfig } from 'ngx-bootstrap/tabs';
import { TimepickerModule } from 'ngx-bootstrap/timepicker';
import { TypeaheadModule } from 'ngx-bootstrap/typeahead';
@NgModule({
declarations: [
AppComponent,
TestComponent
],
imports: [
BrowserAnimationsModule,
BrowserModule,
AccordionModule,
AlertModule,
ButtonsModule,
FormsModule,
CarouselModule,
CollapseModule,
BsDatepickerModule.forRoot(),
BsDropdownModule,
ModalModule,
PaginationModule,
PopoverModule,
ProgressbarModule,
RatingModule,
SortableModule,
TabsModule,
TimepickerModule.forRoot(),
TypeaheadModule.forRoot()
],
providers: [AlertConfig,
BsDatepickerConfig,
BsDropdownConfig,
BsModalService,
PaginationConfig,
ProgressbarConfig,
RatingConfig,
DraggableItemService,
TabsetConfig],
bootstrap: [AppComponent]
})
export class AppModule { }
Perbarui test.component.html untuk menggunakan komponen timepicker.
test.component.html
<input [(ngModel)]="selectedState"
[typeahead]="states"
class="form-control">
<pre class="card card-block card-header mb-3">Model: {{selectedState | json}}</pre>
Perbarui test.component.ts untuk variabel dan metode yang sesuai.
test.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-test',
templateUrl: './test.component.html',
styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {
selectedState: string;
states: string[] = ['Alabama','Alaska','Arizona','Arkansas','California','Colorado',
'Connecticut','Delaware','Florida','Georgia','Hawaii','Idaho','Illinois',
'Indiana','Iowa','Kansas','Kentucky','Louisiana','Maine',
'Maryland','Massachusetts','Michigan','Minnesota','Mississippi',
'Missouri','Montana','Nebraska','Nevada','New Hampshire','New Jersey',
'New Mexico','New York','North Dakota','North Carolina','Ohio',
'Oklahoma','Oregon','Pennsylvania','Rhode Island','South Carolina',
'South Dakota','Tennessee','Texas','Utah','Vermont',
'Virginia','Washington','West Virginia','Wisconsin','Wyoming'];
constructor() {}
ngOnInit(): void {
}
}
Bangun dan Sajikan
Jalankan perintah berikut untuk memulai server sudut.
ng serve
Setelah server aktif dan berjalan. Buka http: // localhost: 4200. Klik tombol Open modal dan verifikasi keluaran berikut.