angularjs ist ein hervorragendes Web-Frontend-Framework, das vom Google-Team entwickelt wurde. Bei so vielen derzeit verfügbaren Web-Frameworks kann sich AngularJS in Bezug auf Architekturdesign, bidirektionale Datenbindung, Abhängigkeitsinjektion, Direktiven, MVC und Vorlagen von den anderen abheben. Angular.js integriert auf innovative Weise die Back-End-Technologie in die Front-End-Entwicklung und löscht so den früheren Glanz von jQuery aus. Die Verwendung von AngularJS ist wie das Schreiben von Backend-Code, standardisierter, strukturierter und kontrollierbarer.
1.bootstrp-Popup-Eingabeaufforderung
Bootstrap hat uns geholfen, die sehr nützliche Popup-Eingabeaufforderung Popover zu kapseln.
http://v3.bootcss.com/javascript/#popovers
2. Benutzerdefinierter Popover-Befehl
Wir verwenden einen Befehl, um jedem Element ein Popover hinzuzufügen, und der Popover-Inhalt kann je nach Situation geändert werden.
JS:
<script> var app = angular.module('testApp', []); app.factory('dataService',function() { var service = {}; service.cacheObj = {}; service.getAppName = function (appId, callback) { if (service.cacheObj[appId]) { console.log('get name from cache'); callback(service.cacheObj[appId]); return; } //here is sample. Always ajax. service.cacheObj[appId] = 'QQ'; callback('QQ'); }; return service; }); app.directive('myPopover', function (dataService) { return { restrict: 'AE', link: function (scope, ele, attrs) { $(ele).data('title','App'); $(ele).data('content', "<div id ='popDiv'>Name:-</div>"); $(ele).popover({ html: true, trigger: 'hover'}); $(ele).on('shown.bs.popover',function() { var popDiv = $('#popDiv'); console.log(popDiv); dataService.getAppName('xxx',function(name) { popDiv.html('Name:'+name); }); }); } }; }); app.controller("test",function($scope) { }); </script>
html:
<div ng-app="testApp"> <div ng-controller="test"> <div> <a my-popover>app 1</a> <a my-popover>app 2</a> </div> </div> </div>
Das Obige ist die vom Editor eingeführte Kombination aus AngularJS und Bootstrap, um Popup-Eingabeaufforderungsinhalte dynamisch zu laden.