fixing browserify

This commit is contained in:
Ryan Day 2013-08-27 19:59:04 -07:00
parent 3df9ceaba9
commit 983fb15664
4 changed files with 39 additions and 34 deletions

View file

@ -4,9 +4,10 @@ var spawn = require('child_process').spawn,
var q = [
function(){
var browserify = spawn('node',['node_modules/browserify/bin/cli.js','qrcodeclient.js','-o', 'build/qrcode.js']);
var browserify = spawn('node',['node_modules/browserify/bin/cmd.js','qrcodeclient.js','-o', 'build/qrcode.js']);
browserify.stdin.end();
browserify.stdout.pipe(process.stdout);
browserify.stderr.pipe(process.stderr);
browserify.on('exit',function(code){
if(code){
console.error('browserify failed!');

View file

@ -25,7 +25,7 @@
},
"devDependencies": {
"express": "2.5.x",
"browserify": "1.9.x",
"browserify": "~2.29.0",
"uglify-js": "1.2.x",
"canvasutil": "*",
"tap": "*"

View file

@ -1,4 +1,8 @@
var QRCodeLib = require('./lib/qrcode-draw.js');
if(typeof window !== "undefined") window.QRCodeLib = QRCodeLib;
if(typeof window !== "undefined") {
window.qrcodelib = window.QRCodeLib = QRCodeLib;
// monkey patch old api
QRCodeLib.qrcodedraw = QRCodeLib.QRCodeDraw;
}

View file

@ -13,41 +13,41 @@
<textarea id="test-text" class="b"></textarea>
<small style="color:#d4d4d4;" class="b">* i did not include jquery on purpose</small>
<script>
if(!window.console) window.console = {log:function(){},warn:function(){}};
if(!window.console) window.console = {log:function(){},warn:function(){}};
var qrcodedraw = new qrcodelib.qrcodedraw();
//triggered errors will throw
qrcodedraw.errorbehavior.length = false;
var drawqr = function(text){
qrcodedraw.draw(document.getElementById('test'),text,function(error,canvas){
if(error) {
if(window.console && window.console.warn) {
console.warn(error);
} else {
alert(error);
}
}
});
}
var qrcodedraw = new qrcodelib.qrcodedraw();
//triggered errors will throw
qrcodedraw.errorBehavior.length = false;
var drawQR = function(text){
qrcodedraw.draw(document.getElementById('test'),text,function(error,canvas){
if(error) {
if(window.console && window.console.warn) {
console.warn(error);
} else {
alert(error);
}
}
});
}
var ta = document.getElementById('test-text'),last=0,lastTime = 1;
ta.addEventListener('keyup',function(){
var ta = document.getElementById('test-text'),last=0,lastTime = 1;
ta.addEventListener('keyup',function(){
var l = Date.now(),z = this;
last = l;
setTimeout(function(){
//this will kinda lock the browsers event loop for a sec.
//it could have some setTimeout within processing to make it more client side friendly. or web workers...
if(l == last) {
var s=Date.now();
drawQR(z.value);
lastTime = Date.now()-s;
}
},lastTime+(lastTime/2));
},false);
var l = Date.now(),z = this;
last = l;
setTimeout(function(){
//this will kinda lock the browsers event loop for a sec.
//it could have some setTimeout within processing to make it more client side friendly. or web workers...
if(l == last) {
var s=Date.now();
drawQR(z.value);
lastTime = Date.now()-s;
}
},lastTime+(lastTime/2));
},false);
ta.value = 'i work client side too?';
drawQR('i work client side too?');
ta.value = 'i work client side too?';
drawQR('i work client side too?');
</script>