#INDEX
1. Accordion
2. Carousel
3. Collapse
4. DropDown
5. Modal(embedded)
1. Accordion
2. Carousel
3. Collapse
4. DropDown
5. Modal(embedded)
<div class="panel panel-default"> <div class="panel-heading">Modal from embedded template</div> <div class="panel-body"> <div> <button class="btn btn-default" ng-click="open('sm')">Small modal</button> <button class="btn btn-default" ng-click="open('lg')">Large modal</button> <div ng-show="selected != null">Selected: {{ selected }}</div> </div> </div> </div>
library WpDartExample.modalemb; import 'package:angular/angular.dart'; import 'package:angular_ui/angular_ui.dart'; @Component( selector: 'modalemb-demo', useShadowDom: false, templateUrl: 'modalemb_demo.html', exportExpressions: const ["tmp", "ok"] ) class ModalembDemoComponent implements ScopeAware { List<String> items = ["item1", "item2", "item3", "item4"]; String selected; String tmp; Modal modal; ModalInstance modalInstance; Scope scope; String template = """ <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">I'm a modal!</h4> </div> <div class="modal-body"> <ul> <li ng-repeat="item in items"> <a ng-click="tmp = item">{{ item }}</a> </li> </ul> Selected: <b>{{tmp}}</b> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> <button type="button" class="btn btn-primary" ng-click="ok(tmp)">OK</button> </div> """; ModalembDemoComponent(this.modal); ModalInstance getModalInstance(size) { return modal.open(new ModalOptions(template:template,size:size), scope); } void open(size) { modalInstance = getModalInstance(size); modalInstance.opened ..then((v) { print('Opened'); }, onError: (e) { print('Open error is $e'); }); modalInstance.close = (result) { selected = result; print('Closed with selection $selected'); modal.hide(); }; modalInstance.dismiss = (String reason) { print('Dismissed with $reason'); modal.hide(); }; } void ok(sel) { modalInstance.close(sel); } }
(css) [ng-cloak], [data-ng-cloak], .ng-cloak ,.ng-hide{ display: none !important; } (pubspec.yaml) dependencies: browser: '>=0.10.0+2 =0.10.1 =1.1.0 =0.6.8
6. Modal(external)
<script type="text/ng-template" id="template_2.html"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title">I'm a modal!</h4> </div> <div class="modal-body"> <ul> <li ng-repeat="item in items"> <a ng-click="tmp = item">{{ item }}</a> </li> </ul> Selected: <b>{{tmp}}</b><br> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> <button type="button" class="btn btn-primary" ng-click="ok(tmp)">OK</button> </div> </script> <div class="panel panel-default"> <div class="panel-heading">Modal from template page</div> <div class="panel-body"> <div> <button class="btn btn-default" ng-click="openUrl('template_2.html','sm')">Small modal</button> <button class="btn btn-default" ng-click="openUrl('template_2.html','lg')">Large modal</button> <div ng-show="selected != null">Selected: {{ selected }}</div> </div> </div> </div>
library WpDartExample.modalext; import 'package:angular/angular.dart'; import 'package:angular_ui/angular_ui.dart'; @Component( selector: 'modalext-demo', useShadowDom: false, templateUrl: 'modalext_demo.html', exportExpressions: const ["tmp", "ok"] ) class ModalextDemoComponent implements ScopeAware { List items = ["Java", "Dart", "JavaScript", "Ruby"]; String selected; String tmp; String other; Modal modal; ModalInstance modalInstance; Scope scope; ModalextDemoComponent(this.modal) { } void openUrl(String templateUrl, String size) { modalInstance = modal.open(new ModalOptions(templateUrl:templateUrl, size: size), scope); modalInstance.result ..then((value) { selected = value; print('Closed with selection $value'); }, onError:(e) { print('Dismissed with $e'); }); } void ok(sel) { modalInstance.close(sel); } }
(css) [ng-cloak], [data-ng-cloak], .ng-cloak ,.ng-hide{ display: none !important; } (pubspec.yaml) dependencies: browser: '>=0.10.0+2 =0.10.1 =1.1.0 =0.6.8