微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Angular Material关联切片

<pre><code class="lang-html"><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('contactsChipController', contactsChipController); function contactsChipController ($scope) { var self = this; self.querySearch = querySearch; self.allContacts = loadContacts(); self.contacts = [self.allContacts[0]]; self.filterSelected = true; function querySearch (query) { var results = query ? self.allContacts.filter(createFilterFor(query)) : []; return results; } function createFilterFor(query) { var lowercaseQuery = angular.lowercase(query); return function filterFn(contact) { return (contact._lowername.indexOf(lowercaseQuery) != -1);; }; } function loadContacts() { var contacts = [ 'Roberto Karlos', 'Bob Crestor', 'Nigel Rick', 'Narayana Garner', 'Anita Gros', 'Megan Smith', 'Tsvetko Metzger', 'Hector Simek', 'James Roody' ]; return contacts.map(function (c, index) { var cParts = c.split(' '); var contact = { name: c, email: cParts[0][0].toLowerCase() + '.' + cParts[1].toLowerCase() + '@example.com', image: 'http://lorempixel.com/50/50/people?' + index }; contact._lowername = contact.name.toLowerCase(); return contact; }); } } </script> </head> <body ng-app = firstApplication> <div ng-controller = contactsChipController as ctrl layout = column ng-cloak> <md-content class = md-padding autocomplete layout = column> <md-contact-chips ng-model = ctrl.contacts md-contacts = ctrl.querySearch($query) md-contact-name = name md-contact-image = image md-contact-email = email md-require-match = true md-highlight-flags = i filter-selected = ctrl.filterSelected placeholder = To> </md-contact-chips> <md-list class = fixedRows> <md-subheader class = md-no-sticky>Contacts</md-subheader> <md-list-item class = md-2-line contact-item ng-repeat = (index, contact) in ctrl.allContacts ng-if = ctrl.contacts.indexOf(contact) < 0> <img ng-src = {{contact.image}} class = md-avatar alt = {{contact.name}} /> <div class = md-list-item-text compact> <h3>{{contact.name}}</h3> <p>{{contact.email}}</p> </div> </md-list-item> <md-list-item class = md-2-line contact-item selected ng-repeat = (index, contact) in ctrl.contacts> <img ng-src = {{contact.image}} class = md-avatar alt = {{contact.name}} /> <div class = md-list-item-text compact> <h3>{{contact.name}}</h3> <p>{{contact.email}}</p> </div> </md-list-item> </md-list> </md-content> </div> </body> </html> </code></pre>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐