nas_engine
Version:
engine for nas
1 lines • 4.39 kB
JSON
{"preview":"<!DOCTYPE html>\n<html>\n<head>\n <title>预览页</title>\n <link href=\"http://b0.hucdn.com/lib/nas_base.css\" rel=\"stylesheet\" media=\"all\">\n <script src=\"http://b0.hucdn.com/lib/react.js?v=1\"></script>\n <script src=\"http://b0.hucdn.com/lib/react-dom.js?v=1\"></script>\n <script src=\"http://b0.hucdn.com/lib/browser.min.js?v=1\"></script>\n <script src=\"http://b0.hucdn.com/lib/jquery.min.js?v=1\"></script>\n <script type=\"text/javascript\">\n ! function(a) {\n function b() {\n a.rem = f.getBoundingClientRect().width / 16, f.style.fontSize = a.rem + \"px\"\n }\n var c, d = a.navigator.appVersion.match(/iphone/gi) ? a.devicePixelRatio : 1,\n e = 1 / d,\n f = document.documentElement,\n g = document.createElement(\"meta\");\n if (a.dpr = d, a.addEventListener(\"resize\", function() {\n clearTimeout(c), c = setTimeout(b, 300)\n }, !1), a.addEventListener(\"pageshow\", function(a) {\n a.persisted && (clearTimeout(c), c = setTimeout(b, 300))\n }, !1), f.setAttribute(\"data-dpr\", d), g.setAttribute(\"name\", \"viewport\"), g.setAttribute(\"content\", \"initial-scale=\" + e + \", maximum-scale=\" + e + \", minimum-scale=\" + e + \", user-scalable=no\"), f.firstElementChild) f.firstElementChild.appendChild(g);\n else {\n var h = document.createElement(\"div\");\n h.appendChild(g), document.write(h.innerHTML)\n }\n b()\n }(window);\n </script>\n <!--组件css-->\n <style type=\"text/css\">\n /*布点一行一列*/\n .anchorR1{\n overflow: hidden;\n }\n .anchorR1 a{\n float:left;\n margin-right: .128rem;\n }\n .anchorR1 a:last-child{\n float: right;\n margin-right: 0;\n }\n .anchorR1 img{\n display: block;\n width: 100%;\n height: 100%;\n }\n </style>\n</head>\n<body>\n<div id=\"top-wrap\"></div>\n<script id=\"component-data\" type=\"text/data\">\n{{{componentsData}}}\n</script>\n<script type=\"text/babel\">\n //获取组件数据\n var data=[];\n try {\n data = JSON.parse($('#component-data').html());\n } catch (e) {\n }\n //定义组件\n /*布点一行一列*/\n var AnchorR1= React.createClass({\n render : function(){\n var data=this.props.data,containerStyle={backgroundColor:data.bgColor,paddingTop:data.paddingTop+'rem',paddingBottom:data.paddingBottom+'rem'};\n return <div className=\"anchorR1\" style={containerStyle} data-module data-aid={data.aid}>\n {\n $(data.anchors).map(function(index,em){\n var style={\n width:em.width+'rem',\n height:em.height+'rem'\n };\n return <a key={index} href={em.link} style={style}>{em.img && <img src={em.img}/>}</a>\n }).get()\n }\n </div>\n }\n });\n var moduleAry=[];\n //组件映射表\n var compmentMap={\n AnchorR1:AnchorR1\n };\n //生成组件\n $(data).each(function(index,em){\n var compment=compmentMap[em.key];\n compment && moduleAry.push(React.createElement(compment,{key:index,data:em.config}));\n });\n ReactDOM.render(<div>{moduleAry}</div>,document.getElementById('top-wrap'));\n</script>\n<!--组件js-->\n<script type=\"text/javascript\">\n</script>\n</body>\n</html>\n","jsx":"'use strict';\nvar React = require('react-native');\n\nvar {\nView,\nPlatform,\nDimensions\n} = React;\n\nvar {\nHBApp ,\n} = (Platform.OS == 'ios') ? require('nas_engine/src/rn/ios-interface.js') : require('nas_engine/src/rn/android-interface.js');\n\nglobal.HBApp = HBApp;\n\nvar { width, height } = Dimensions.get('window'),\nphone = {\"width\":width,\"height\":height},\nretio = 750 / phone.width;\n\nglobal.retio = retio;\n\n{{{requireCom}}}\n\nconst Index = React.createClass({\nrender() {\nreturn (\n<View>\n {{{compoLists}}}\n</View>\n);\n}\n});\n\n\nHBApp.Methods.screen.setHeight({{{viewHeight}}}/retio);\n\nReact.AppRegistry.registerComponent('HBApp', () => Index);"}