UNPKG

ladda-angular

Version:

Ladda button directive for angularjs

98 lines (77 loc) 2.98 kB
![license](https://img.shields.io/npm/l/ladda-angular.svg) ![travis](https://travis-ci.org/sachinchoolur/ladda-angular.svg?branch=master) ![bower](https://img.shields.io/bower/v/ladda-angular.svg) ![npm](https://img.shields.io/npm/v/ladda-angular.svg) # ladda-angular Angularjs directive for [Ladda](http://lab.hakim.se/ladda/) button *`( <300 bytes )`* by [@hakimel](https://twitter.com/hakimel) Demo --- [Ladda angular](http://sachinchoolur.github.io/ladda-angular/) You can also check live demo on [codepen](http://codepen.io/sachinchoolur/pen/ogxpOZ) How to use --- #### Bower You can Install ladda-angular using the [Bower](http://bower.io) package manager. ```sh $ bower install ladda-angular --save ``` #### npm You can also find ladda-angular on [npm](http://npmjs.org). ```sh $ npm install ladda-angular ``` #### Create your ladda button For more information about how to create ladda button please refer [ladda](https://github.com/hakimel/Ladda) button repository. #### The code add the Following code into your document. ``` html <script src="path/ladda-angular.min.js"></script> ``` #### module Add `ladda` dependency to your module ``` javascript var myApp = angular.module("app", ["ladda"]); ``` #### directive Add directive `ladda-button` with your normal ladda button. ``` html <button ladda-button="laddaLoading" data-style="expand-right" class="ladda-button"><span class="ladda-label">Submit</span> ``` Directive attribute should be a scope variable with value true or false or number. * `true` >> To start loading. * `false` >> To stop loading. * `number` >> To set progress value. #### Controller example ``` javascript app.controller('laddaDemoCtrl', function ($scope, $interval, $timeout) { // Example without progress Bar $scope.showLoading = function () { // Set ladda loading true // Loading spinner will be shown; $scope.laddaLoading = true; $timeout(function () { // Set ladda loading false after 3 Seconds. // Loading spinner will be hidden; $scope.laddaLoading = false; }, 3000); }; // Example without progress Bar $scope.loadingWithProgress = function () { // Set progress 0; $scope.laddaLoadingBar = 0; // Run in every 30 milliseconds var interval = $interval(function () { // Increment by 1; $scope.laddaLoadingBar++; if ($scope.laddaLoadingBar >= 100) { // Cancel interval if progress is 100 $interval.cancel(interval); //Set ladda loading false $scope.laddaLoadingBar = false; } }, 30); }; }); ``` #### [guidelines for contributors](https://github.com/sachinchoolur/ladda-angular/blob/master/contributing.md) #### MIT © [Sachin](https://twitter.com/sachinchoolur)