Angular-qrcodejs-directive

http://angularjs.org/

by Luqman Rom

HTML

<script src="http://code.angularjs.org/angular-1.0.1.js"></script>
<script src="https://rawgit.com/davidshimjs/qrcodejs/master/qrcode.min.js"></script>
<qrcode text="asd">
</qrcode>

JavaScript

var myApp = angular.module('myApp',[])
.directive('qrcode', function($interpolate) {  
  return {
    restrict: 'E',
    link: function($scope, $element, $attrs) {

      var options = {
        text: '',
        width: 128,
        height: 128,
        colorDark: '#000000',
        colorLight: '#ffffff',
        correctLevel: 'H'
      };

      Object.keys(options).forEach(function(key) {
        options[key] = $interpolate($attrs[key] || '')($scope) || options[key];
      });

      options.correctLevel = QRCode.CorrectLevel[options.correctLevel];

      new QRCode($element[0], options);

    }
  };
});