Bahan Sudut - Panduan Cepat
Angular Material adalah pustaka komponen UI untuk pengembang JS Angular. Komponen UI yang dapat digunakan kembali dari Angular Material membantu dalam membangun halaman web dan aplikasi web yang menarik, konsisten, dan fungsional sambil mengikuti prinsip desain web modern seperti portabilitas browser, kemandirian perangkat, dan degradasi yang anggun.
Berikut adalah beberapa fitur yang menonjol dari Material Angular -
Desain responsif bawaan.
CSS standar dengan footprint minimal.
Berisi versi baru dari kontrol antarmuka pengguna umum seperti tombol, kotak centang, dan bidang teks yang disesuaikan untuk mengikuti konsep Desain Material.
Termasuk fitur yang disempurnakan dan khusus seperti kartu, bilah alat, panggil cepat, navigasi samping, gesek, dan sebagainya.
Lintas-browser, dan dapat digunakan untuk membuat komponen web yang dapat digunakan kembali.
Desain responsif
Angular Material memiliki desain responsif bawaan sehingga situs web yang dibuat menggunakan Angular Material akan mendesain ulang sendiri sesuai ukuran perangkat.
Kelas Angular Material dibuat sedemikian rupa sehingga situs web dapat menyesuaikan dengan ukuran layar apa pun.
Situs web yang dibuat menggunakan Angular Material sepenuhnya kompatibel dengan PC, tablet, dan perangkat seluler.
Dapat diperluas
Material Sudut dengan desain sangat minim dan datar.
Ini dirancang dengan mempertimbangkan fakta bahwa jauh lebih mudah untuk menambahkan aturan CSS baru daripada menimpa aturan CSS yang ada.
Ini mendukung bayangan dan warna-warna berani.
Warna dan corak tetap seragam di berbagai platform dan perangkat.
Dan yang paling penting, Angular Material benar-benar gratis untuk digunakan.
Bagaimana Cara Menggunakan Material Angular?
Ada dua cara untuk menggunakan Material Angular -
Local Installation - Anda dapat mendownload library Angular Material menggunakan npm, jspm, atau bower di komputer lokal Anda dan memasukkannya ke dalam kode HTML Anda.
CDN Based Version - Anda dapat menyertakan file angular-material.min.css dan angular-material js ke dalam kode HTML Anda langsung dari Content Delivery Network (CDN).
Instalasi Lokal
Sebelum kami menggunakan perintah npm berikut, kami memerlukan instalasi NodeJS di sistem kami. Untuk mendapatkan informasi tentang node JS, klik di sini dan buka antarmuka baris perintah NodeJS. Kami akan menggunakan perintah berikut untuk menginstal pustaka Angular Material.
npm install angular-material
Perintah di atas akan menghasilkan output berikut -
[email protected] node_modules\angular-animate
[email protected] node_modules\angular-aria
[email protected] node_modules\angular-messages
[email protected] node_modules\angular
[email protected] node_modules\angular-material
npm akan mengunduh file di bawah node_modules > angular-materialmap. Sertakan file seperti yang dijelaskan dalam contoh berikut -
Contoh
Sekarang Anda dapat memasukkan file css dan js ke dalam file HTML Anda sebagai berikut -
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<script type = "text/javascript">
angular.module('firstApplication', ['ngMaterial']);
</script>
</head>
<body ng-app = "firstApplication" ng-cloak>
<md-toolbar class = "md-warn">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">HTML 5</h2>
</div>
</md-toolbar>
<md-content flex layout-padding>
<p>HTML5 is the next major revision of the HTML standard superseding HTML
4.01, XHTML 1.0, and XHTML 1.1. HTML5 is a standard for structuring and
presenting content on the World Wide Web.</p>
<p>HTML5 is a cooperation between the World Wide Web Consortium (W3C) and
the Web Hypertext Application Technology Working Group (WHATWG).</p>
<p>The new standard incorporates features like video playback and drag-and-drop
that have been previously dependent on third-party browser plug-ins such as
Adobe Flash, Microsoft Silverlight, and Google Gears.</p>
</md-content>
</body>
</html>
Program di atas akan menghasilkan hasil sebagai berikut -
Versi Berbasis CDN
Anda bisa memasukkan angular-material.css dan angular-material.jsfile ke kode HTML Anda langsung dari Jaringan Pengiriman Konten (CDN). Google CDN menyediakan konten untuk versi terbaru.
Kami menggunakan perpustakaan versi Google CDN selama tutorial ini.
Contoh
Sekarang mari kita tulis ulang contoh di atas menggunakan angular-material.min.css dan angular-material.min.js dari Google CDN.
<html lang = "en" >
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<script type = "text/javascript">
angular.module('firstApplication', ['ngMaterial']);
</script>
</head>
<body ng-app = "firstApplication" ng-cloak>
<md-toolbar class = "md-warn">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">HTML 5</h2>
</div>
</md-toolbar>
<md-content flex layout-padding>
<p>HTML5 is the next major revision of the HTML standard superseding HTML 4.01,
XHTML 1.0, and XHTML 1.1. HTML5 is a standard for structuring and presenting
content on the World Wide Web.</p>
<p>HTML5 is a cooperation between the World Wide Web Consortium (W3C) and the Web
ypertext Application Technology Working Group (WHATWG).</p>
<p>The new standard incorporates features like video playback and drag-and-drop
that have been previously dependent on third-party browser plug-ins such as Adobe
Flash, Microsoft Silverlight, and Google Gears.</p>
</md-content>
</body>
</html>
Program di atas akan menghasilkan hasil sebagai berikut -
Itu md-autocomplete, Angular Directive, digunakan sebagai kontrol masukan khusus dengan dropdown bawaan untuk menampilkan semua kemungkinan kecocokan dengan kueri kustom. Kontrol ini bertindak sebagai kotak saran waktu nyata segera setelah pengguna mengetik di area masukan.<md-autocomplete>dapat digunakan untuk memberikan hasil pencarian dari sumber data lokal atau jarak jauh. md-autocomplete menyimpan hasil cache saat menjalankan kueri. Setelah panggilan pertama, ia menggunakan hasil yang di-cache untuk menghilangkan permintaan server yang tidak perlu atau logika pencarian dan itu dapat dinonaktifkan.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-autocomplete.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | * md-items Ekspresi dalam format item dalam item untuk mengulangi kecocokan untuk pencarian Anda. |
2 | md-selected-item-change Ekspresi yang akan dijalankan setiap kali item baru dipilih. |
3 | md-search-text-change Ekspresi yang akan dijalankan setiap kali teks pencarian diperbarui. |
4 | md-search-text Model untuk mengikat teks kueri penelusuran. |
5 | md-selected-item Model untuk mengikat item yang dipilih. |
6 | md-item-text Ekspresi yang akan mengubah objek Anda menjadi satu string. |
7 | placeholder Teks placeholder yang akan diteruskan ke masukan. |
8 | md-no-cache Menonaktifkan cache internal yang terjadi di pelengkapan otomatis. |
9 | ng-disabled Menentukan apakah akan menonaktifkan kolom input atau tidak. |
10 | md-min-length Menentukan panjang teks minimum sebelum pelengkapan otomatis memberikan saran. |
11 | md-delay Menentukan jumlah waktu (dalam milidetik) untuk menunggu sebelum mencari hasil. |
12 | md-autofocus Jika benar, akan segera memfokuskan elemen masukan. |
13 | md-autoselect Jika benar, item pertama akan dipilih secara default. |
14 | md-menu-class Ini akan diterapkan ke menu tarik-turun untuk gaya. |
15 | md-floating-label Ini akan menambahkan label mengambang ke pelengkapan otomatis dan membungkusnya dalam md-input-container. |
16 | md-input-name Atribut nama yang diberikan ke elemen masukan untuk digunakan dengan FormController. |
17 | md-input-id ID yang akan ditambahkan ke elemen masukan. |
18 | md-input-minlength Panjang minimum nilai input untuk validasi. |
19 | md-input-maxlength Panjang maksimum nilai input untuk validasi. |
20 | md-select-on-match Jika disetel sebagai benar, pelengkapan otomatis akan secara otomatis memilih item yang tepat jika teks pencarian sama persis. |
Contoh
Contoh berikut menunjukkan penggunaan file md-autocomplete direktif dan juga penggunaan pelengkapan otomatis.
am_autocomplete.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('autoCompleteController', autoCompleteController);
function autoCompleteController ($timeout, $q, $log) {
var self = this;
self.simulateQuery = false;
self.isDisabled = false;
// list of states to be displayed
self.states = loadStates();
self.querySearch = querySearch;
self.selectedItemChange = selectedItemChange;
self.searchTextChange = searchTextChange;
self.newState = newState;
function newState(state) {
alert("This functionality is yet to be implemented!");
}
function querySearch (query) {
var results = query ? self.states.filter( createFilterFor(query) ) :
self.states, deferred;
if (self.simulateQuery) {
deferred = $q.defer();
$timeout(function () {
deferred.resolve( results );
},
Math.random() * 1000, false);
return deferred.promise;
} else {
return results;
}
}
function searchTextChange(text) {
$log.info('Text changed to ' + text);
}
function selectedItemChange(item) {
$log.info('Item changed to ' + JSON.stringify(item));
}
//build list of states as map of key-value pairs
function loadStates() {
var allStates = '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 Carolina,\
North Dakota, Ohio, Oklahoma, Oregon, Pennsylvania, Rhode Island, South Carolina,\
South Dakota, Tennessee, Texas, Utah, Vermont, Virginia, Washington, West Virginia,\
Wisconsin, Wyoming';
return allStates.split(/, +/g).map( function (state) {
return {
value: state.toLowerCase(),
display: state
};
});
}
//filter function for search query
function createFilterFor(query) {
var lowercaseQuery = angular.lowercase(query);
return function filterFn(state) {
return (state.value.indexOf(lowercaseQuery) === 0);
};
}
}
</script>
</head>
<body ng-app = "firstApplication" ng-cloak>
<div ng-controller = "autoCompleteController as ctrl" layout = "column" ng-cloak>
<md-content class = "md-padding">
<form ng-submit = "$event.preventDefault()">
<p><code>md-autocomplete</code> can be used to provide search results from
local or remote data sources.</p>
<md-autocomplete
ng-disabled = "ctrl.isDisabled"
md-no-cache = "ctrl.noCache"
md-selected-item = "ctrl.selectedItem"
md-search-text-change = "ctrl.searchTextChange(ctrl.searchText)"
md-search-text = "ctrl.searchText"
md-selected-item-change = "ctrl.selectedItemChange(item)"
md-items = "item in ctrl.querySearch(ctrl.searchText)"
md-item-text = "item.display"
md-min-length = "0"
placeholder = "US State?">
<md-item-template>
<span md-highlight-text = "ctrl.searchText"
md-highlight-flags = "^i">{{item.display}}</span>
</md-item-template>
<md-not-found>
No states matching "{{ctrl.searchText}}" were found.
<a ng-click = "ctrl.newState(ctrl.searchText)">Create a new one!</a>
</md-not-found>
</md-autocomplete>
<br/>
<md-checkbox ng-model = "ctrl.simulateQuery">Show progress for results?
</md-checkbox>
<md-checkbox ng-model = "ctrl.noCache">Disable caching?</md-checkbox>
<md-checkbox ng-model = "ctrl.isDisabled">Disable?</md-checkbox>
<p><code>md-autocomplete</code> caches results when performing a query.
After first call, it uses the cached results to eliminate unnecessary
server requests or lookup logic and it can be disabled.</p>
</form>
</md-content>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu $mdBottomSheet, Layanan Angular, digunakan untuk membuka lembar bawah di atas aplikasi dan menyediakan API janji sederhana.
SN | Metode & Deskripsi | ||||||||
---|---|---|---|---|---|---|---|---|---|
1 | $mdBottomSheet.show(options); Perlihatkan lembar bawah dengan opsi yang ditentukan.
|
Contoh
Contoh berikut menunjukkan penggunaan file $mdBottomSheet service dan juga penggunaan bottom sheet.
am_bottomsheet.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('bottomSheetController', bottomSheetController);
function bottomSheetController ($scope, $mdBottomSheet) {
$scope.openBottomSheet = function() {
$mdBottomSheet.show ({
template: '<md-bottom-sheet>Learn <b>Angular Material</b> @ TutorialsPoint.com!</md-bottom-sheet>'
});
};
}
</script>
</head>
<body ng-app = "firstApplication">
<div ng-controller = "bottomSheetController as ctrl" layout = "column">
<md-content class = "md-padding">
<form ng-submit = "$event.preventDefault()">
<md-button class = "md-raised md-primary" ng-click = "openBottomSheet()">
Open Bottom Sheet!
</md-button>
</form>
</md-content>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-card, Angular Directive, adalah direktif kontainer dan digunakan untuk menggambar kartu dalam aplikasi angularjs. Tabel berikut mencantumkan arahan sudut dan kelas yang digunakan dalam md-card.
Sr Tidak | Petunjuk / Kelas & Deskripsi |
---|---|
1 | <md-card-header> Header untuk kartu, berisi avatar, teks dan gambar persegi. |
2 | <md-card-avatar> Avatar kartu. |
3 | md-user-avatar Kelas untuk gambar pengguna. |
4 | <md-icon> Ikon direktif. |
5 | <md-card-header-text> Berisi elemen untuk deskripsi kartu. |
6 | md-title Kelas untuk judul kartu. |
7 | md-subhead Kelas untuk sub header kartu. |
8 | <img> Gambar untuk kartu. |
9 | <md-card-title> Judul konten kartu. |
10 | <md-card-title-text> Wadah teks Judul Kartu. |
11 | md-headline Kelas untuk judul isi kartu. |
12 | md-subhead Kelas untuk sub header konten kartu. |
13 | <md-card-title-media> Gambar persegi di dalam judul. |
14 | md-media-sm Kelas untuk gambar kecil. |
15 | md-media-md Kelas untuk gambar sedang. |
16 | md-media-lg Kelas untuk gambar besar. |
17 | <md-card-content> Konten kartu. |
18 | md-media-xl Kelas untuk gambar ekstra besar. |
19 | <md-card-actions> Tindakan kartu. |
20 | <md-card-icon-actions> Tindakan ikon. |
Contoh
Contoh berikut menunjukkan penggunaan direktif md-card dan juga penggunaan kelas kartu.
am_cards.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('cardController', cardController);
function cardController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<md-card>
<img ng-src = "/html5/images/html5-mini-logo.jpg" class = "md-card-image" alt = "Learn HTML5">
<md-card-header>
<md-card-avatar>
<img class = "md-user-avatar" src = "/html5/images/html5-mini-logo.jpg">
</md-card-avatar>
<md-card-header-text>
<span class = "md-title">HTML5</span>
<span class = "md-subhead">Learn HTML5 @TutorialsPoint.com</span>
</md-card-header-text>
</md-card-header>
<md-card-title>
<md-card-title-text>
<span class = "md-headline">HTML5</span>
</md-card-title-text>
</md-card-title>
<md-card-actions layout = "row" layout-align = "start center">
<md-button>Download</md-button>
<md-button>Start</md-button>
<md-card-icon-actions>
<md-button class = "md-icon-button" aria-label = "icon">
<md-icon class = "material-icons">add</md-icon>
</md-button>
</md-card-icon-actions>
</md-card-actions>
<md-card-content>
<p>HTML5 is the next major revision of the HTML standard superseding HTML 4.01,
XHTML 1.0, and XHTML 1.1. HTML5 is a standard for structuring and presenting
content on the World Wide Web.</p>
<p>HTML5 is a cooperation between the World Wide Web Consortium (W3C) and the
Web Hypertext Application Technology Working Group (WHATWG).</p>
</p>The new standard incorporates features like video playback and
drag-and-drop that have been previously dependent on third-party browser
plug-ins such as Adobe Flash, Microsoft Silverlight, and Google Gears.</p>
</md-card-content>
</md-card>
</body>
</html>
Hasil
Verifikasi hasilnya.
Angular Material menyediakan pustaka widget UI yang kaya. Ini memungkinkan pengguna untuk memiliki kemampuan interaksi tingkat lanjut dengan aplikasi.
Tabel berikut mencantumkan beberapa Widget penting dengan deskripsinya -
Sr Tidak | Widget & Deskripsi |
---|---|
1 | Tombol Itu md-button, Angular Directive, adalah petunjuk tombol yang memiliki riak tinta opsional (dan secara default diaktifkan). Jikahref atau ng-href atribut disediakan, maka direktif ini bertindak sebagai elemen jangkar. |
2 | Kotak Centang Itu md-checkbox, Angular Directive, digunakan sebagai kontrol kotak centang. |
3 | Kandungan Itu md-content, Angular Directive, adalah elemen kontainer dan digunakan untuk konten yang dapat digulir. Itulayout-padding atribut dapat ditambahkan untuk memiliki konten yang empuk. |
4 | DatePicker Itu md-datepicker, Angular Directive, adalah kontrol input untuk memilih tanggal. Ini juga mendukung ngMessages untuk validasi input. |
5 | Dialog Itu md-dialog, Angular Directive, adalah elemen kontainer dan digunakan untuk menampilkan kotak dialog. Elemennyamd-dialog-content berisi konten dialog dan md-dialog-actions bertanggung jawab atas tindakan dialog. Itu mdDialog, Layanan Angular, membuka dialog di atas aplikasi agar pengguna mendapat informasi dan membantu mereka membuat keputusan. |
6 | Pembagi Itu md-divider, Angular Directive, adalah elemen aturan dan digunakan untuk menampilkan aturan ringan tipis untuk mengelompokkan dan membagi konten dalam daftar dan tata letak halaman. |
7 | Daftar Itu md-list, direktif Angular, adalah komponen kontainer yang berisi md-list-itemelemen sebagai anak-anak. Direktif md-list-item adalah komponen kontainer untuk item baris dari kontainer md-list. Kelas CSSmd-2-line dan md-3-line dapat ditambahkan ke md-list-item untuk menambah tinggi baris masing-masing dengan 22px dan 40px. |
8 | Tidak bisa Itu md-menu, Angular directive, adalah komponen untuk menampilkan opsi tambahan dalam konteks tindakan yang dilakukan. Itumd-menumemiliki dua elemen anak. Elemen pertama adalahtrigger elementdan digunakan untuk membuka menu. Elemen kedua adalahmd-menu-contentuntuk merepresentasikan isi menu saat menu dibuka. Md-menu-content biasanya membawa item menu sebagai md-menu-item. |
9 | Bilah Menu Itu md-menu-bar, Merupakan komponen wadah untuk menampung banyak menu. Bilah menu membantu membuat efek menu yang disediakan sistem operasi. |
10 | Bilah Kemajuan Itu md-progress-circular dan md-progress-linear adalah arahan kemajuan Angular, dan digunakan untuk menampilkan pesan konten pemuatan dalam aplikasi. |
11 | Tombol radio Itu md-radio-group dan md-radio-buttonArahan sudut digunakan untuk menampilkan tombol radio di aplikasi. Md-radio-group adalah wadah pengelompokan untuk elemen md-radio-button. |
12 | Memilih Itu md-select, Arahan Angular digunakan untuk menampilkan kotak Select, dibatasi oleh ng-model. |
13 | Toolbar Fab Itu md-fab-toolbar, Arahan Angular, digunakan untuk menampilkan bilah alat elemen atau tombol untuk akses cepat ke tindakan umum. |
14 | Penggeser Itu md-slider, Arahan Angular digunakan untuk menunjukkan komponen rentang. Ini memiliki dua mode -
|
15 | Tab Itu md-tabs dan md-tabArahan sudut digunakan untuk menampilkan tab di applcation. md-tabs adalah wadah pengelompokan untuk elemen md-tab. |
16 | Toolbar Itu md-toolbar, Arahan Angular digunakan untuk menampilkan toolbar yang biasanya merupakan area di atas konten untuk menampilkan judul dan tombol yang relevan. |
17 | Tooltips The Angular Material menyediakan berbagai metode khusus untuk menampilkan tooltips yang tidak mengganggu pengguna. Angular Material menyediakan cara untuk menetapkan arah untuk mereka dan direktif md-tooltip digunakan untuk menampilkan tooltips. Tooltip aktif setiap kali pengguna memfokuskan, mengarahkan kursor ke atas, atau menyentuh komponen induk. |
18 | Keripik Itu md-chips, Angular Directive, digunakan sebagai komponen khusus yang disebut Chip dan dapat digunakan untuk mewakili sekumpulan kecil informasi misalnya, kontak, tag, dll. Template kustom dapat digunakan untuk membuat konten chip. Ini dapat dicapai dengan menentukan elemen md-chip-template yang memiliki konten kustom sebagai anak dari md-chips. |
19 | Hubungi Chips Itu md-contact-chips, Angular Directive, adalah kontrol input yang dibangun di atas md-chip dan menggunakan md-autocompleteelemen. Komponen chip kontak menerima ekspresi permintaan yang mengembalikan daftar kemungkinan kontak. Seorang pengguna dapat memilih salah satunya dan menambahkannya ke daftar chip yang tersedia. |
Petunjuk Tata Letak
Direktif tata letak pada elemen kontainer digunakan untuk menentukan arah tata letak untuk anaknya. Berikut adalah nilai yang dapat ditetapkan untuk Tata Letak Directive -
row - Item disusun secara horizontal dengan max-height = 100% dan max-width adalah lebar item di container.
column - Barang disusun secara vertikal dengan max-width = 100% dan max-height adalah tinggi barang di dalam container.
Agar desain responsif seperti tata letak diubah secara otomatis bergantung pada ukuran layar perangkat, API tata letak yang tercantum dalam tabel berikut dapat digunakan untuk menyetel arah tata letak untuk perangkat dengan lebar tampilan.
Sr Tidak | Lebar API & Perangkat saat breakpoint menggantikan default |
---|---|
1 | layout Menyetel arah tata letak default kecuali diganti oleh breakpoint lain. |
2 | layout-xs lebar <600px |
3 | layout-gt-xs lebar> = 600px |
4 | layout-sm 600px <= width <960px |
5 | layout-gt-sm lebar> = 960 piksel |
6 | layout-md 960px <= width <1280px |
7 | layout-gt-md lebar> = 1280 piksel |
8 | layout-lg 1280px <= width <1920px |
9 | layout-gt-lg lebar> = 1920px |
10 | layout-xl lebar> = 1920px |
Contoh
Contoh berikut menunjukkan penggunaan direktif layout dan juga penggunaan layout.
am_layouts.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.box {
color:white;
padding:10px;
text-align:center;
border-style: inset;
}
.green {
background:green;
}
.blue {
background:blue;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('layoutController', layoutController);
function layoutController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "layoutContainer" ng-controller = "layoutController as ctrl"
style = "height:100px;" ng-cloak>
<div layout = "row" layout-xs = "column">
<div flex class = "green box">Row 1: Item 1</div>
<div flex = "20" class = "blue box">Row 1: Item 2</div>
</div>
<div layout = "column" layout-xs = "column">
<div flex = "33" class = "green box">Column 1: item 1</div>
<div flex = "66" class = "blue box">Column 1: item 2</div>
</div>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Arahan Fleksibel
Direktif fleksibel pada elemen kontainer digunakan untuk menyesuaikan ukuran dan posisi elemen. Ini mendefinisikan cara elemen menyesuaikan ukurannya sehubungan dengan penampung induknya dan elemen lain di dalam penampung. Berikut adalah nilai yang dapat diberikan untuk direktif flex -
multiples of 5 - 5, 10, 15 ... 100
33 - 33%
66 - 66%
Contoh
Contoh berikut menunjukkan penggunaan direktif flex dan juga penggunaan flex.
am_flex.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.box {
color:white;
padding:10px;
text-align:center;
border-style: inset;
}
.green {
background:green;
}
.blue {
background:blue;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('layoutController', layoutController);
function layoutController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "layoutContainer" ng-controller = "layoutController as ctrl"
layout = "row" style = "height:100px;" ng-cloak layout-wrap>
<div flex = "30" class = "green box">
[flex = "30"]
</div>
<div flex = "45" class = "blue box">
[flex = "45"]
</div>
<div flex = "25" class = "green box">
[flex = "25"]
</div>
<div flex = "33" class = "green box">
[flex = "33"]
</div>
<div flex = "66" class = "blue box">
[flex = "66"]
</div>
<div flex = "50" class = "blue box">
[flex = "50"]
</div>
<div flex class = "green box">
[flex]
</div>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-input-container, Arahan Angular, adalah komponen kontainer yang berisi file <input> atau <textarea>elemen sebagai seorang anak. Ini juga mendukung penanganan kesalahan menggunakan arahan ng-messages standar dan menganimasikan pesan menggunakan peristiwa ngEnter / ngLeave atau peristiwa ngShow / ngHide.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda dari md-input-container.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | md-maxlength Jumlah karakter maksimum yang diperbolehkan dalam input ini. Jika ini ditentukan, penghitung karakter akan ditampilkan di bawah input. Tujuan dari md-maxlength adalah untuk menampilkan teks penghitung panjang maksimum. Jika Anda tidak ingin teks penghitung dan hanya membutuhkan validasi "biasa", Anda dapat menggunakan atribut "sederhana" ng-maxlength atau maxlength. |
2 | aria-label Label Aria diperlukan jika tidak ada label. Pesan peringatan akan dicatat di konsol jika label tidak ada. |
3 | placeholder Pendekatan alternatif untuk menggunakan aria-label ketika label tidak ada. Teks placeholder disalin ke atribut aria-label. |
4 | md-no-autogrow Saat ini, textarea tidak akan tumbuh secara otomatis. |
5 | md-detect-hidden Saat ada, textarea akan diukur ukurannya dengan benar saat terungkap setelah disembunyikan. Ini dinonaktifkan secara default karena alasan kinerja karena menjamin alur ulang setiap siklus intisari. |
Contoh
Contoh berikut menunjukkan penggunaan direktif md-input-container dan juga penggunaan input.
am_inputs.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('inputController', inputController);
function inputController ($scope) {
$scope.project = {
comments: 'Comments',
};
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "inputContainer" class = "inputDemo"
ng-controller = "inputController as ctrl" ng-cloak>
<md-content layout-padding>
<form name = "projectForm">
<md-input-container class = "md-block">
<label>User Name</label>
<input required name = "userName" ng-model = "project.userName">
<div ng-messages = "projectForm.userName.$error">
<div ng-message = "required">This is required.</div>
</div>
</md-input-container>
<md-input-container class = "md-block">
<label>Email</label>
<input required type = "email" name = "userEmail"
ng-model = "project.userEmail"
minlength = "10" maxlength = "100" ng-pattern = "/^.+@.+\..+$/" />
<div ng-messages = "projectForm.userEmail.$error" role = "alert">
<div ng-message-exp = "['required', 'minlength', 'maxlength',
'pattern']">
Your email must be between 10 and 100 characters long and should
be a valid email address.
</div>
</div>
</md-input-container>
<md-input-container class = "md-block">
<label>Comments</label>
<input md-maxlength = "300" required name = "comments"
ng-model = "project.comments">
<div ng-messages = "projectForm.comments.$error">
<div ng-message = "required">This is required.</div>
<div ng-message = "md-maxlength">The comments has to be less
than 300 characters long.</div>
</div>
</md-input-container>
</form>
</md-content>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-icon, direktif Angular, adalah komponen untuk menampilkan ikon berbasis vektor dalam aplikasi. Ini mendukung font ikon dan ikon SVG juga selain menggunakan Ikon Material Google.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-icon.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | * md-font-icon Ini adalah nama string ikon CSS yang terkait dengan font-face, yang akan digunakan untuk membuat ikon. Membutuhkan font dan gaya CSS yang diberi nama untuk dimuat sebelumnya. |
2 | * md-font-set Ini adalah nama gaya CSS yang terkait dengan pustaka font, yang akan ditetapkan sebagai kelas untuk ligatur font-icon. Nilai ini juga dapat berupa alias yang digunakan untuk mencari nama kelas; gunakan $ mdIconProvider.fontSet (<alias>) secara internal untuk menentukan nama gaya. |
3 | * md-svg-src Ini adalah String URL (atau ekspresi) yang digunakan untuk memuat, meng-cache, dan menampilkan SVG eksternal. |
4 | * md-svg-icon Ini adalah nama string yang digunakan untuk mencari ikon dari cache internal; string atau ekspresi yang diinterpolasi juga dapat digunakan. Nama set tertentu dapat digunakan dengan sintaks <set name>: <icon name>. Untuk menggunakan kumpulan ikon, pengembang diharuskan untuk melakukan pra-registrasi kumpulan menggunakan layanan $ mdIconProvider. |
5 | aria-label Ikon label ini untuk aksesibilitas. Jika string kosong diberikan, ikon akan disembunyikan dari lapisan aksesibilitas dengan aria-hidden = "true". Jika tidak ada aria-label pada ikon atau label pada elemen induk, peringatan akan dicatat ke konsol. |
6 | alt Ikon label ini untuk aksesibilitas. Jika string kosong diberikan, ikon akan disembunyikan dari lapisan aksesibilitas dengan aria-hidden = "true". Jika tidak ada alt pada ikon atau label pada elemen induk, peringatan akan dicatat ke konsol. |
Contoh
Contoh berikut menunjukkan penggunaan direktif md-icons dan juga penggunaan ikon.
am_icons.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.iconDemo .glyph {
border-bottom: 1px dotted #ccc;
padding: 10px 0 20px;
margin-bottom: 20px;
}
.iconDemo .preview-glyphs {
display: flex;
flex-direction: row;
}
.iconDemo .step {
flex-grow: 1;
line-height: 0.5;
}
.iconDemo .material-icons.md-18 {
font-size: 18px;
}
.iconDemo .material-icons.md-24 {
font-size: 24px;
}
.iconDemo .material-icons.md-36 {
font-size: 36px;
}
.iconDemo .material-icons.md-48 {
font-size: 48px;
}
.iconDemo .material-icons.md-dark {
color: rgba(0, 0, 0, 0.54);
}
.iconDemo .material-icons.md-dark.md-inactive {
color: rgba(0, 0, 0, 0.26);
}
.iconDemo .material-icons.md-light {
color: white;
}
.iconDemo .material-icons.md-light.md-inactive {
color: rgba(255, 255, 255, 0.3);
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('iconController', iconController);
function iconController ($scope) {
var iconData = [
{name: 'accessibility' , color: "#777" },
{name: 'question_answer', color: "rgb(89, 226, 168)" },
{name: 'backup' , color: "#A00" },
{name: 'email' , color: "#00A" }
];
$scope.fonts = [].concat(iconData);
$scope.sizes = [
{size:"md-18",padding:0},
{size:"md-24",padding:2},
{size:"md-36",padding:6},
{size:"md-48",padding:10}
];
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "iconContainer" class = "iconDemo"
ng-controller = "iconController as ctrl" ng-cloak>
<div class = "glyph" ng-repeat = "font in fonts" layout = "row">
<div ng-repeat = "it in sizes" flex layout-align = "center center"
style = "text-align: center;" layout = "column">
<div flex></div>
<div class = "preview-glyphs">
<md-icon ng-style = "{color: font.color}"
aria-label = "{{ font.name }}"
class = "material-icons step"
ng-class = "it.size">
{{ font.name }}
</md-icon>
</div>
</div>
</div>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-grid-list, Arahan Angular, adalah komponen untuk menata konten untuk berbagai ukuran layar. Petak memiliki 12 kolom di layar ukuran desktop, 8 di layar ukuran tablet, dan 4 di layar ukuran ponsel, di mana setiap ukuran memiliki margin dan talang yang telah ditentukan sebelumnya. Sel disusun secara berurutan dalam satu baris, dalam urutan yang ditentukan.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-grid-list.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | * md-cols Ini untuk jumlah kolom di kisi. |
2 | * md-row-height Satu dari
|
3 | md-gutter Jumlah ruang antara ubin di unit CSS (default 1px). |
4 | md-on-layout Ekspresi untuk dievaluasi setelah tata letak. Objek acara tersedia sebagai $ acara, dan berisi informasi kinerja. |
Contoh
Contoh berikut menunjukkan penggunaan file md-grid-list direktif dan juga penggunaan grid.
am_grid.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('gridController', gridController);
function gridController ($scope) {
var COLORS = [
'#ffebee', '#ffcdd2', '#ef9a9a', '#e57373', '#ef5350', '#f44336',
'#e53935', '#d32f2f', '#c62828', '#b71c1c', '#ff8a80', '#ff5252',
'#ff1744', '#d50000', '#f8bbd0', '#f48fb1', '#f06292', '#ec407a',
'#e91e63', '#d81b60', '#c2185b', '#ad1457', '#880e4f', '#ff80ab',
'#ff4081', '#f50057', '#c51162', '#e1bee7', '#ce93d8', '#ba68c8',
'#ab47bc', '#9c27b0', '#8e24aa', '#7b1fa2', '#4a148c', '#ea80fc',
'#e040fb', '#d500f9', '#aa00ff', '#ede7f6', '#d1c4e9', '#b39ddb',
'#9575cd', '#7e57c2', '#673ab7', '#5e35b1', '#4527a0', '#311b92',
'#b388ff', '#7c4dff', '#651fff', '#6200ea', '#c5cae9', '#9fa8da',
'#7986cb', '#5c6bc0', '#3f51b5', '#3949ab', '#303f9f', '#283593',
'#1a237e', '#8c9eff', '#536dfe', '#3d5afe', '#304ffe', '#e3f2fd',
'#bbdefb', '#90caf9', '#64b5f6', '#42a5f5', '#2196f3', '#1e88e5',
'#1976d2', '#1565c0', '#0d47a1', '#82b1ff', '#448aff', '#2979ff',
'#2962ff', '#b3e5fc', '#81d4fa', '#4fc3f7', '#29b6f6', '#03a9f4',
'#039be5', '#0288d1', '#0277bd', '#01579b', '#80d8ff', '#40c4ff',
'#00b0ff', '#0091ea', '#e0f7fa', '#b2ebf2', '#80deea', '#4dd0e1',
'#26c6da', '#00bcd4', '#00acc1', '#0097a7', '#00838f', '#006064',
'#84ffff', '#18ffff', '#00e5ff', '#00b8d4', '#e0f2f1', '#b2dfdb',
'#80cbc4', '#4db6ac', '#26a69a', '#009688', '#00897b', '#00796b',
'#00695c', '#a7ffeb', '#64ffda', '#1de9b6', '#00bfa5', '#e8f5e9',
'#c8e6c9', '#a5d6a7', '#81c784', '#66bb6a', '#4caf50', '#43a047',
'#388e3c', '#2e7d32', '#1b5e20', '#b9f6ca', '#69f0ae', '#00e676',
'#00c853', '#f1f8e9', '#dcedc8', '#c5e1a5', '#aed581', '#9ccc65',
'#8bc34a', '#7cb342', '#689f38', '#558b2f', '#33691e', '#ccff90',
'#b2ff59', '#76ff03', '#64dd17', '#f9fbe7', '#f0f4c3', '#e6ee9c',
'#dce775', '#d4e157', '#cddc39', '#c0ca33', '#afb42b', '#9e9d24',
'#827717', '#f4ff81', '#eeff41', '#c6ff00', '#aeea00', '#fffde7',
'#fff9c4', '#fff59d', '#fff176', '#ffee58', '#ffeb3b', '#fdd835',
'#fbc02d', '#f9a825', '#f57f17', '#ffff8d', '#ffff00', '#ffea00',
'#ffd600', '#fff8e1', '#ffecb3', '#ffe082', '#ffd54f', '#ffca28',
'#ffc107', '#ffb300', '#ffa000', '#ff8f00', '#ff6f00', '#ffe57f',
'#ffd740', '#ffc400', '#ffab00', '#fff3e0', '#ffe0b2', '#ffcc80',
'#ffb74d', '#ffa726', '#ff9800', '#fb8c00', '#f57c00', '#ef6c00',
'#e65100', '#ffd180', '#ffab40', '#ff9100', '#ff6d00', '#fbe9e7',
'#ffccbc', '#ffab91', '#ff8a65', '#ff7043', '#ff5722', '#f4511e',
'#e64a19', '#d84315', '#bf360c', '#ff9e80', '#ff6e40', '#ff3d00',
'#dd2c00', '#d7ccc8', '#bcaaa4', '#795548', '#d7ccc8', '#bcaaa4',
'#8d6e63', '#eceff1', '#cfd8dc', '#b0bec5', '#90a4ae', '#78909c',
'#607d8b', '#546e7a', '#cfd8dc', '#b0bec5', '#78909c'
];
this.colorTiles = (function() {
var tiles = [];
for (var i = 0; i < 46; i++) {
tiles.push ({
color: randomColor(),
colspan: randomSpan(),
rowspan: randomSpan()
});
}
return tiles;
})();
function randomColor() {
return COLORS[Math.floor(Math.random() * COLORS.length)];
}
function randomSpan() {
var r = Math.random();
if (r < 0.8) {
return 1;
} else if (r < 0.9) {
return 2;
} else {
return 3;
}
}
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "gridContainer" ng-controller = "gridController as ctrl" ng-cloak>
<md-content layout-padding>
<md-grid-list
md-cols-gt-md = "12" md-cols-sm = "3" md-cols-md = "8"
md-row-height-gt-md = "1:1" md-row-height = "4:3"
md-gutter-gt-md = "16px" md-gutter-gt-sm = "8px" md-gutter = "4px">
<md-grid-tile
ng-repeat = "tile in ctrl.colorTiles"
ng-style = "{
'background': tile.color
}"
md-colspan-gt-sm = "{{tile.colspan}}"
md-rowspan-gt-sm = "{{tile.rowspan}}">
</md-grid-tile>
</md-grid-list>
</md-content>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Ubah ukuran layar untuk melihat efeknya.
Itu md-sidenav, Arahan Angular digunakan untuk menampilkan komponen wadah yang dapat ditampilkan atau disembunyikan secara terprogram. Ini meluncur keluar di atas wilayah konten utama secara default.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-sidenav
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | md-is-open Model terikat pada apakah sidenav dibuka. |
2 | md-component-id componentId untuk digunakan dengan layanan $ mdSidenav. |
3 | md-is-locked-open Saat ekspresi ini bernilai true, sidenav 'mengunci terbuka': ia jatuh ke aliran konten alih-alih muncul di atasnya. Ini menggantikan atribut is-open. Layanan $ mdMedia () diekspos ke atribut is-lock-open, yang dapat diberikan media query atau salah satu preset sm, gt-sm, md, gt-md, lg atau gt-lg. Examples - |
Contoh
Contoh berikut menunjukkan penggunaan md-sidenav dan juga penggunaan file sidenav komponen.
am_sidenav.htm
<html lang = "en">
<head>
<link rel = "stylesheet" href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('sideNavController', sideNavController);
function sideNavController ($scope, $mdSidenav) {
$scope.openLeftMenu = function() {
$mdSidenav('left').toggle();
};
$scope.openRightMenu = function() {
$mdSidenav('right').toggle();
};
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "sideNavContainer" ng-controller = "sideNavController as ctrl"
layout = "row" ng-cloak>
<md-sidenav md-component-id = "left" class = "md-sidenav-left">
Welcome to TutorialsPoint.Com</md-sidenav>
<md-content>
<md-button ng-click = "openLeftMenu()">Open Left Menu</md-button>
<md-button ng-click = "openRightMenu()">Open Right Menu</md-button>
</md-content>
<md-sidenav md-component-id = "right" class = "md-sidenav-right">
<md-button href = "http://google.com">Google</md-button>
</md-sidenav>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-fab-speed-dial, Arahan Angular, digunakan untuk menampilkan serangkaian elemen popup atau tombol untuk akses cepat ke tindakan umum.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-fab-speed-dial.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | * md-direction Ini menentukan arah kemunculan panggil cepat relatif terhadap elemen pemicu. |
2 | md-open Ini membantu secara terprogram mengontrol apakah panggil cepat terlihat atau tidak. |
Contoh
Contoh berikut menunjukkan penggunaan perintah md-fab-speed-dial dan juga penggunaan speed dial.
am_speeddial.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.fabSpeedDial .text-capitalize {
text-transform: capitalize;
}
.fabSpeedDial .md-fab:hover, .fabSpeedDialdemoBasicUsage .md-fab.md-focused {
background-color: #000 !important;
}
.fabSpeedDial p.note {
font-size: 1.2rem;
}
.fabSpeedDial .lock-size {
min-width: 300px;
min-height: 300px;
width: 300px;
height: 300px;
margin-left: auto;
margin-right: auto;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('speedDialController', speedDialController);
function speedDialController ($scope) {
this.topDirections = ['left', 'up'];
this.bottomDirections = ['down', 'right'];
this.isOpen = false;
this.availableModes = ['md-fling', 'md-scale'];
this.selectedMode = 'md-fling';
this.availableDirections = ['up', 'down', 'left', 'right'];
this.selectedDirection = 'up';
}
</script>
</head>
<body ng-app = "firstApplication">
<div class = "fabSpeedDial" id = "speedDialContainer"
ng-controller = "speedDialController as ctrl" layout = "row" ng-cloak>
<md-content>
<div class = "lock-size" layout = "row" layout-align = "center center">
<md-fab-speed-dial md-open = "ctrl.isOpen"
md-direction = "{{ctrl.selectedDirection}}"
ng-class = "ctrl.selectedMode">
<md-fab-trigger>
<md-button aria-label = "menu" class = "md-fab md-warn">
<md-icon class = "material-icons">menu</md-icon>
</md-button>
</md-fab-trigger>
<md-fab-actions>
<md-button aria-label = "Add" class = "md-fab md-raised md-mini
md-accent">
<md-icon class = "material-icons" aria-label = "Add">
add</md-icon>
</md-button>
<md-button aria-label = "Insert Link" class = "md-fab md-raised
md-mini md-accent">
<md-icon class = "material-icons" aria-label = "Insert Link">
insert_link</md-icon>
</md-button>
<md-button aria-label = "Edit" class = "md-fab md-raised md-mini
md-accent">
<md-icon class = "material-icons" aria-label = "Edit">
mode_edit</md-icon>
</md-button>
</md-fab-actions>
</md-fab-speed-dial>
</div>
<div layout = "row" layout-align = "space-around">
<div layout = "column" layout-align = "start center">
<b>Direction</b>
<md-radio-group ng-model = "ctrl.selectedDirection">
<md-radio-button ng-repeat = "direction in ctrl.availableDirections"
ng-value = "direction" class = "text-capitalize">
{{direction}}
</md-radio-button>
</md-radio-group>
</div>
<div layout = "column" layout-align = "start center">
<b>Open/Closed</b>
<md-checkbox ng-model = "ctrl.isOpen">
Open
</md-checkbox>
</div>
<div layout = "column" layout-align = "start center">
<b>Animation Modes</b>
<md-radio-group ng-model = "ctrl.selectedMode">
<md-radio-button ng-repeat = "mode in ctrl.availableModes"
ng-value = "mode">
{{mode}}
</md-radio-button>
</md-radio-group>
</div>
</div>
</md-content>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-subheader, Direktif Angular, digunakan untuk menampilkan subheader untuk suatu bagian.
Contoh
Contoh berikut menunjukkan penggunaan md-subheader dan juga penggunaan komponen subheader.
am_subheaders.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('subheaderController', subheaderController);
function subheaderController ($scope) {
$scope.fruitNames = ['Apple', 'Banana', 'Orange'];
$scope.vegNames = ['Carrot', 'Potato', 'Cabbage'];
$scope.eateries = ['Milk', 'Bread'];
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "subheaderContainer" ng-controller = "subheaderController as ctrl"
layout = "column" flex layout-fill ng-cloak>
<md-toolbar md-scroll-shrink>
<div class = "md-toolbar-tools">Items</div>
</md-toolbar>
<md-content style = "height: 600px;">
<section>
<md-subheader class = "md-primary">Fruits</md-subheader>
<md-list layout-padding>
<md-list-item ng-repeat = "fruits in fruitNames">
<div>
<p>{{fruits}}</p>
</div>
</md-list-item>
</md-list>
</section>
<section>
<md-subheader class = "md-warn">Vegetables</md-subheader>
<md-list layout-padding>
<md-list-item ng-repeat = "veg in vegNames">
<div>
<p>{{veg}}</p>
</div>
</md-list-item>
</md-list>
</section>
<section>
<md-subheader>Eateries</md-subheader>
<md-list layout-padding>
<md-list-item ng-repeat = "eatery in eateries">
<div>
<p>{{eatery}}</p>
</div>
</md-list-item>
</md-list>
</section>
</md-content>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Fungsionalitas Swipe dimaksudkan untuk perangkat seluler. Arahan berikut digunakan untuk menangani gesekan.
md-swipe-down, direktif Angular digunakan untuk menentukan perilaku kustom saat elemen digeser ke bawah.
md-swipe-left, direktif Angular digunakan untuk menentukan perilaku kustom saat elemen digeser ke kiri.
md-swipe-right, direktif Angular digunakan untuk menentukan perilaku kustom saat elemen digeser ke kanan.
md-swipe-up, direktif Angular digunakan untuk menentukan perilaku kustom saat elemen digesek.
Contoh
Contoh berikut menunjukkan penggunaan md-swipe- * dan juga penggunaan komponen swipe.
am_swipes.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.swipeContainer .demo-swipe {
padding: 20px 10px;
}
.swipeContainer .no-select {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('swipeController', swipeController);
function swipeController ($scope) {
$scope.onSwipeLeft = function(ev) {
alert('Swiped Left!');
};
$scope.onSwipeRight = function(ev) {
alert('Swiped Right!');
};
$scope.onSwipeUp = function(ev) {
alert('Swiped Up!');
};
$scope.onSwipeDown = function(ev) {
alert('Swiped Down!');
};
}
</script>
</head>
<body ng-app = "firstApplication">
<md-card>
<div id = "swipeContainer" ng-controller = "swipeController as ctrl"
layout = "row" ng-cloak>
<div flex>
<div class = "demo-swipe" md-swipe-left = "onSwipeLeft()">
<span class = "no-select">Swipe me to the left</span>
<md-icon md-font-icon = "android" aria-label = "android"></md-icon>
</div>
<md-divider></md-divider>
<div class = "demo-swipe" md-swipe-right = "onSwipeRight()">
<span class = "no-select">Swipe me to the right</span>
</div>
</div>
<md-divider></md-divider>
<div flex layout = "row">
<div flex layout = "row" layout-align = "center center"
class = "demo-swipe" md-swipe-up = "onSwipeUp()">
<span class = "no-select">Swipe me up</span>
</div>
<md-divider></md-divider>
<div flex layout = "row" layout-align = "center center"
class = "demo-swipe" md-swipe-down = "onSwipeDown()">
<span class = "no-select">Swipe me down</span>
</div>
</div>
</div>
</md-card>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-switch, direktif Angular, digunakan untuk menunjukkan sakelar.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-switch.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | * ng-model Ekspresi sudut yang dapat ditetapkan ke data-bind to. |
2 | name Nama properti formulir tempat kontrol diterbitkan. |
3 | ng-true-value Nilai ekspresi yang harus ditetapkan saat dipilih. |
4 | ng-false-value Nilai yang harus ditetapkan ekspresi saat tidak dipilih. |
5 | ng-change Ekspresi Angular akan dieksekusi saat input berubah karena interaksi pengguna dengan elemen input. |
6 | ng-disabled En / Disable berdasarkan ekspresi. |
7 | md-no-ink Penggunaan atribut menunjukkan penggunaan efek tinta riak. |
8 | aria-label Ini menerbitkan label tombol yang digunakan oleh pembaca layar untuk aksesibilitas. Ini default ke teks sakelar. |
Contoh
Contoh berikut menunjukkan penggunaan md-swipe- * dan juga penggunaan komponen swipe.
am_switches.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('switchController', switchController);
function switchController ($scope) {
$scope.data = {
switch1: true,
switch2: false,
switch3: false,
switch4: true,
switch5: true,
switch6: false
};
$scope.message = 'false';
$scope.onChange = function(state) {
$scope.message = state;
};
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "switchContainer" ng-controller = "switchController as ctrl"
layout = "column" ng-cloak>
<md-switch ng-model = "data.switch1" aria-label = "Switch 1">
Switch 1: {{ data.switch1 }}
</md-switch>
<md-switch ng-model = "data.switch2" aria-label = "Switch 2"
ng-true-value = "'true'" ng-false-value = "'false'" class = "md-warn">
Switch 2 (md-warn): {{ data.switch2 }}
</md-switch>
<md-switch ng-disabled = "true" aria-label = "Disabled switch"
ng-model = "disabledModel">
Switch 3 (Disabled)
</md-switch>
<md-switch ng-disabled = "true" aria-label = "Disabled active switch"
ng-model = "data.switch4">
Switch 4 (Disabled, Active)
</md-switch>
<md-switch class = "md-primary" md-no-ink aria-label = "Switch No Ink"
ng-model = "data.switch5">
Switch 5 (md-primary): No Ink
</md-switch>
<md-switch ng-model = "data.switch6" aria-label = "Switch 6"
ng-change = "onChange(data.switch6)">
Switch 6 : {{ message }}
</md-switch>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Komponen Bahan Angular menggunakan kelas kelompok maksud seperti md-primary, md-accent, md-warn dan kelas tambahan untuk perbedaan warna seperti md-hue-1, md-hue-2, atau md-hue-3. Komponen berikut mendukung penggunaan kelas yang disebutkan di atas.
- md-button
- md-checkbox
- md-progress-circular
- md-progress-linear
- md-radio-button
- md-slider
- md-switch
- md-tabs
- md-text-float
- md-toolbar
Tema dapat dikonfigurasi menggunakan $ mdThemingProvider selama konfigurasi aplikasi. Properti berikut dapat digunakan untuk menetapkan palet warna yang berbeda.
- primaryPalette
- accentPalette
- warnPalette
- backgroundPalette
Contoh
Contoh berikut menunjukkan penggunaan tema dalam aplikasi Angular JS.
am_themes.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('themeController', themeController)
.config(function($mdThemingProvider) {
$mdThemingProvider.theme('customTheme')
.primaryPalette('grey')
.accentPalette('orange')
.warnPalette('red');
});
function themeController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "themeContainer" ng-controller = "themeController as ctrl" ng-cloak>
<md-toolbar class = "md-primary">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Default Theme</h2>
</div>
</md-toolbar>
<hr/>
<md-card>
<md-card-content layout = "column">
<md-toolbar class = "md-primary">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-primary style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-primary md-hue-1">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-primary md-hue-1 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-primary md-hue-2">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-primary md-hue-2 style</h2>
</div></md-toolbar>
<md-toolbar class = "md-accent">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-accent style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-accent md-hue-1">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-accent md-hue-1 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-accent md-hue-2">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-accent md-hue-2 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-warn">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-warn style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-warn md-hue-1">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-warn md-hue-1 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-warn md-hue-2">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-warn md-hue-2 style</h2>
</div>
</md-toolbar>
</md-card-content>
</md-card>
<div md-theme = "customTheme">
<md-toolbar class = "md-primary">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Custom Theme</h2>
</div>
</md-toolbar>
<hr/>
<md-card>
<md-card-content layout = "column">
<md-toolbar class = "md-primary">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-primary style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-primary md-hue-1">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-primary md-hue-1 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-primary md-hue-2">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-primary md-hue-2 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-accent">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-accent style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-accent md-hue-1">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-accent md-hue-1 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-accent md-hue-2">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-accent md-hue-2 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-warn">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-warn style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-warn md-hue-1">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-warn md-hue-1 style</h2>
</div>
</md-toolbar>
<md-toolbar class = "md-warn md-hue-2">
<div class = "md-toolbar-tools">
<h2 class = "md-flex">Using md-warn md-hue-2 style</h2>
</div>
</md-toolbar>
</md-card-content>
</md-card>
</div>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
The Angular Material menyediakan berbagai metode khusus untuk menampilkan peringatan yang tidak mengganggu pengguna. Ini juga memberikan istilah bersulang untuk mereka. Layanan $ mdToast digunakan untuk menampilkan toast.
Contoh
Contoh berikut menunjukkan penggunaan toasts.
am_toasts.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('toastController', toastController);
function toastController ($scope, $mdToast, $document) {
$scope.showToast1 = function() {
$mdToast.show (
$mdToast.simple()
.textContent('Hello World!')
.hideDelay(3000)
);
};
$scope.showToast2 = function() {
var toast = $mdToast.simple()
.textContent('Hello World!')
.action('OK')
.highlightAction(false);
$mdToast.show(toast).then(function(response) {
if ( response == 'ok' ) {
alert('You clicked \'OK\'.');
}
});
}
}
</script>
</head>
<body ng-app = "firstApplication">
<div id = "toastContainer" ng-controller = "toastController as ctrl"
layout = "row" ng-cloak>
<md-button ng-click = "showToast1()">Show Simple Alert</md-button>
<md-button ng-click = "showToast2()">Show Alert with callback</md-button>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Angular Material menyediakan berbagai kelas CSS tipografi yang dapat digunakan untuk menciptakan konsistensi visual di seluruh aplikasi Angular JS.
Tabel berikut mencantumkan kelas yang berbeda dengan deskripsinya.
Sr Tidak | Nama & Deskripsi Kelas |
---|---|
1 | md-display-1 Menampilkan teks dengan Regular 34px. |
2 | md-display-2 Menampilkan teks dengan Regular 45px. |
3 | md-display-3 Menampilkan teks dengan 56px Reguler. |
4 | md-display-4 Menampilkan teks dengan Light 112px. |
5 | md-headline Menampilkan teks dengan Regular 24px. |
6 | md-title Menampilkan teks dengan Medium 20px. |
7 | md-subhead Menampilkan teks dengan Reguler 16px. |
8 | md-body-1 Menampilkan teks dengan Regular 14px. |
9 | md-body-2 Menampilkan teks dengan Medium 14px. |
10 | md-button Menampilkan tombol dengan Medium 14px. |
11 | md-caption Menampilkan teks dengan Reguler 12px. |
Contoh
Contoh berikut menunjukkan penggunaan kelas CSS tipografi.
am_typography.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('typographyController', typographyController);
function typographyController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<div class = "frameContainer" ng-controller = "typographyController as ctrl"
layout = "column" layout-padding layout-wrap layout-fill
style = "padding-bottom: 32px;" ng-cloak>
<p class = "md-display-4">.md-display-4</p>
<p class = "md-display-3">.md-display-3</p>
<p class = "md-display-2">.md-display-2</p>
<p class = "md-display-1">.md-display-1</p>
<p class = "md-headline">.md-headline</p>
<p class = "md-title">.md-title</p>
<p class = "md-subhead">.md-subhead</p>
<p class = "md-body-1">.md-body-1</p>
<p class = "md-body-2">.md-body-2</p>
<md-button>.md-button</md-button>
<p class = "md-caption">.md-caption</p>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Itu md-virtual-repeat-container adalah wadah gulir untuk komponen md-virtual-repeat.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-virtual-repeat-container.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | md-top-index Mengikat indeks item yang ada di bagian atas wadah gulir ke $ scope. Itu bisa membaca dan mengatur posisi gulir. |
2 | md-orient-horizontal Menentukan apakah penampung harus di-scroll secara horizontal (default ke orientasi dan di-scroll secara vertikal). |
3 | md-auto-shrink Saat ada, wadah akan menyusut agar sesuai dengan jumlah item jika jumlahnya kurang dari ukuran aslinya. |
4 | md-auto-shrink-min Jumlah minimum item yang md-auto-shrink akan menyusut menjadi (default: 0). |
md-virtual-repeat
Pengulangan virtual adalah pengganti ng-repeat untuk merender elemen html yang cukup untuk mengisi container dan menggunakannya kembali saat pengguna menggulir.
Atribut
Tabel berikut mencantumkan parameter dan deskripsi dari atribut yang berbeda md-virtual-repeat.
Sr Tidak | Parameter & Deskripsi |
---|---|
1 | md-item-size Tinggi atau lebar elemen berulang (yang harus identik untuk setiap elemen). Ini opsional. Ini mencoba membaca ukuran dari dom jika tidak ada, tetapi masih mengasumsikan bahwa semua node berulang memiliki tinggi atau lebar yang sama. |
2 | md-extra-name Mengevaluasi ke nama tambahan yang item iterasi saat ini dapat ditetapkan pada cakupan berulang (diperlukan untuk digunakan dalam md-autocomplete). |
3 | md-on-demand Saat hadir, perlakukan md-virtual-repeat argumen sebagai objek yang dapat mengambil baris daripada array. Objek ini harus mengimplementasikan antarmuka berikut dengan dua (2) metode -
|
Contoh
Contoh berikut menunjukkan penggunaan pengulangan virtual.
am_virtualrepeat.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.vrepeatContainer #horizontal-container {
height: 100px;
width: 830px;
}
.vrepeatContainer #vertical-container {
height: 292px;
width: 400px;
}
.vrepeatContainer .repeated-item-horizontal {
border-right: 1px solid #ddd;
box-sizing: border-box;
display: inline-block;
height: 84px;
padding-top: 35px;
text-align: center;
width: 50px;
}
.vrepeatContainer .repeated-item-vertical {
border-bottom: 1px solid #ddd;
box-sizing: border-box;
height: 40px;
padding-top: 10px;
}
.vrepeatContainer md-content {
margin: 16px;
}
.vrepeatContainer md-virtual-repeat-container {
border: solid 1px grey;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('vrepeatController', vrepeatController);
function vrepeatController ($scope) {
this.items = [];
for (var i = 0; i < 1000; i++) {
this.items.push(i);
}
}
</script>
</head>
<body ng-app = "firstApplication">
<div class = "vrepeatContainer" ng-controller = "vrepeatController as ctrl"
ng-cloak>
<md-content layout = "column">
<h2>Horizontal Repeat</h2>
<md-virtual-repeat-container id = "horizontal-container" md-orient-horizontal>
<div md-virtual-repeat = "item in ctrl.items"
class = "repeated-item-horizontal" flex>
{{item}}
</div>
</md-virtual-repeat-container>
<h2>Vertical Repeat</h2>
<md-virtual-repeat-container id = "vertical-container">
<div md-virtual-repeat = "item in ctrl.items"
class = "repeated-item-vertical" flex>
{{item}}
</div>
</md-virtual-repeat-container>
</md-content>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.
Angular Material memiliki beberapa kelas khusus untuk menampilkan wadah seperti kartu mirip kertas dengan bayangan.
Tabel berikut mencantumkan kelas yang berbeda dengan deskripsinya.
Sr Tidak | Nama & Deskripsi Kelas |
---|---|
1 | md-whiteframe-1dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 1px. Menambahkan zdepth dari 1. |
2 | md-whiteframe-2dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 2px. Menambahkan zdepth dari 2. |
3 | md-whiteframe-3dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 3px. Menambahkan zdepth dari 3. |
4 | md-whiteframe-4dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 4px. Menambahkan zdepth dari 4. |
5 | md-whiteframe-5dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 5px. Menambahkan zdepth dari 5. |
6 | md-whiteframe-6dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 6px. Menambahkan zdepth dari 6. |
7 | md-whiteframe-7dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 7px. Menambahkan zdepth dari 7. |
8 | md-whiteframe-8dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 8px. Menambahkan zdepth dari 8. |
9 | md-whiteframe-9dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 9px. Menambahkan zdepth dari 9. |
10 | md-whiteframe-10dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 10px. Menambahkan kedalaman z 10. |
11 | md-whiteframe-11dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 11px. Menambahkan kedalaman z 11. |
12 | md-whiteframe-12dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 12px. Menambahkan kedalaman z 12. |
13 | md-whiteframe-13dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 13px. Menambahkan kedalaman z 13. |
14 | md-whiteframe-14dp Ini memberi gaya wadah untuk setiap konten HTML dengan 14px berbatasan bayangan. Menambahkan kedalaman-z 14. |
15 | md-whiteframe-15dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 15px. Menambahkan kedalaman-z 15. |
16 | md-whiteframe-16dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 16px. Menambahkan kedalaman-z 16. |
17 | md-whiteframe-17dp Ini memberi gaya wadah untuk konten HTML apa pun dengan 17px berbatasan bayangan. Menambahkan kedalaman-z 17. |
18 | md-whiteframe-18dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 18px. Menambahkan kedalaman-z 18. |
19 | md-whiteframe-19dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 19px. Menambahkan kedalaman z 19. |
20 | md-whiteframe-20dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 20px. Menambahkan kedalaman z 20. |
21 | md-whiteframe-21dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 21px. Menambahkan z-depth 21. |
22 | md-whiteframe-22dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 22px. Menambahkan kedalaman z 22. |
23 | md-whiteframe-23dp Ini memberi gaya wadah untuk konten HTML apa pun dengan bayangan berbatasan 23px. Menambahkan kedalaman z 23. |
24 | md-whiteframe-24dp Ini memberi gaya wadah untuk setiap konten HTML dengan 24px berbatasan bayangan. Menambahkan kedalaman z 24. |
Contoh
Contoh berikut menunjukkan penggunaan kelas bayangan.
am_whiteframes.htm
<html lang = "en">
<head>
<link rel = "stylesheet"
href = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src = "https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.js"></script>
<link rel = "stylesheet" href = "https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.frameContainer md-whiteframe {
background: #fff;
margin: 30px;
height: 100px;
}
</style>
<script language = "javascript">
angular
.module('firstApplication', ['ngMaterial'])
.controller('frameController', frameController);
function frameController ($scope) {
}
</script>
</head>
<body ng-app = "firstApplication">
<div class = "frameContainer" ng-controller = "frameController as ctrl"
layout = "row" layout-padding layout-wrap layout-fill
style = "padding-bottom: 32px;" ng-cloak>
<md-whiteframe class = "md-whiteframe-1dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-1dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-2dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-2dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-3dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-3dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-10dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-10dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-15dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-15dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-20dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-20dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-22dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-22dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-23dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-23dp</span>
</md-whiteframe>
<md-whiteframe class = "md-whiteframe-24dp" flex-sm = "45" flex-gt-sm = "35"
flex-gt-md = "25" layout layout-align = "center center">
<span>.md-whiteframe-24dp</span>
</md-whiteframe>
</div>
</body>
</html>
Hasil
Verifikasi hasilnya.