commit 55150659ab32069f098475e90f3a01bacf876ee5 Author: cssivision Date: Fri Nov 20 23:48:49 2015 +0800 init project diff --git a/README.md b/README.md new file mode 100644 index 0000000..45e611e --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +##react-native-qrcode diff --git a/index.js b/index.js new file mode 100644 index 0000000..bd67a91 --- /dev/null +++ b/index.js @@ -0,0 +1 @@ +module.exports = require('./lib/qrcode.js'); diff --git a/lib/Canvas.js b/lib/Canvas.js new file mode 100644 index 0000000..411b1f2 --- /dev/null +++ b/lib/Canvas.js @@ -0,0 +1,33 @@ +'use strict'; + +var React = require('react-native'); +var { + View, + WebView +} = React; + +var Canvas = React.createClass({ + propTypes: { + context: React.PropTypes.object, + render: React.PropTypes.func.isRequired + }, + + render() { + var contextString = JSON.stringify(this.props.context); + var renderString = this.props.render.toString(); + return ( + + *{margin:0;padding:0;}canvas{position:absolute;transform:translateZ(0);}"} + opaque={false} + underlayColor={'transparent'} + style={this.props.style} + /> + + ); + } +}); + +module.exports = Canvas; \ No newline at end of file diff --git a/lib/qrcode.js b/lib/qrcode.js new file mode 100644 index 0000000..35b678b --- /dev/null +++ b/lib/qrcode.js @@ -0,0 +1,44 @@ +'use strict' + +var React = require('react-native'); +var Canvas = require('./Canvas.js'); +var { + View +} = React; +var qr = require('qr.js'); + +module.exports = React.createClass({ + propTypes: { + context: React.PropTypes.object, + render: React.PropTypes.func.isRequired + }, + + getDefaultProps: function() { + return { + height: 200, + width: 200, + value: 'https://github.com/cssivision', + } + }, + + renderCanvas: function(canvas) { + var ctx = canvas.getContext('2d'); + canvas.width = this.props.width; + canvas.height = this.props.height; + canvas.style.left = (window.innerWidth - 200)/2 + 'px'; + if(window.innerHeight>200) canvas.style.top = (window.innerHeight - 200)/2 + 'px'; + + }, + + render: function() { + return ( + + + + ); + } +}); diff --git a/package.json b/package.json new file mode 100644 index 0000000..56397fa --- /dev/null +++ b/package.json @@ -0,0 +1,23 @@ +{ + "name": "react-native-qrcode", + "version": "1.0.0", + "description": "react-native qrocode generator", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/cssivision/react-native-qrcode.git" + }, + "keywords": [ + "react-native", + "qrcode" + ], + "author": "sivision.chen", + "license": "MIT", + "bugs": { + "url": "https://github.com/cssivision/react-native-qrcode/issues" + }, + "homepage": "https://github.com/cssivision/react-native-qrcode#readme" +}