通过bower进行获取:
y@y:ydkt$ bower install jquery-qrcode --save
bower not-cached git://github.com/gcusnieux/jquery-qrcode.git#*
bower resolve git://github.com/gcusnieux/jquery-qrcode.git#*
bower checkout jquery-qrcode#master
bower resolved git://github.com/gcusnieux/jquery-qrcode.git#31e056e747
bower install jquery-qrcode#31e056e747
jquery-qrcode#31e056e747 client/bower_components/jquery-qrcode
y@y:ydkt$
使用:
.modal.fade(id="qrcode" role="dialog")
.modal-dialog
.modal-content
.modal-header
button.close(type="button" data-dismiss="modal" aria-label="Close")
span(aria-hidden="true") ×
h4.modal-title 在线生成二维码
.modal-body
form(name="qrcodeForm")
input.form-control(placeholder="请输入内容..." required="true" ng-change="createQrCode()" ng-model="qrcodeInfo")
br
#qrcodeCanvas.text-center
.modal-footer
button.btn.btn-default(data-dismiss="modal") 关闭
//在线生成二维码
$scope.createQrCode = function(){
//首先清除
jQuery('#qrcodeCanvas').html("");
if($scope.qrcodeInfo!==undefined){
jQuery('#qrcodeCanvas').qrcode({
width: 256,
height: 256,
text : toUtf8($scope.qrcodeInfo)
});
}
};
//解决二维码中的中文乱码问题
function toUtf8(str) {
var out, i, len, c;
out = "";
len = str.length;
for(i = 0; i < len; i++) {
c = str.charCodeAt(i);
if ((c >= 0x0001) && (c <= 0x007F)) {
out += str.charAt(i);
} else if (c > 0x07FF) {
out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));
out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
} else {
out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F));
out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F));
}
}
return out;
}