UNPKG

mr-component

Version:
185 lines (164 loc) 6.25 kB
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>简单输入测试</title> <!-- 加载React 17 --> <script crossorigin src="https://unpkg.com/react@17/umd/react.development.js"></script> <script crossorigin src="https://unpkg.com/react-dom@17/umd/react-dom.development.js"></script> <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script> <!-- 加载lowcode构建文件 --> <script src="../build/lowcode/view.js"></script> <link rel="stylesheet" href="../build/lowcode/view.css" /> <style> body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif; margin: 0; padding: 20px; background: #f5f5f5; } .container { max-width: 375px; margin: 0 auto; background: white; border-radius: 8px; padding: 20px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .test-case { margin-bottom: 20px; padding: 15px; border: 1px solid #eee; border-radius: 4px; } .test-title { font-weight: bold; margin-bottom: 10px; color: #333; } .result { margin-top: 10px; padding: 8px; background: #f0f0f0; border-radius: 4px; font-size: 12px; color: #666; } </style> </head> <body> <div id="root"></div> <script type="text/babel"> const { useState } = React; function App() { const [inputValue, setInputValue] = useState(''); const [mrinputValue, setMrinputValue] = useState(''); console.log('VantComponents available:', typeof VantComponents !== 'undefined'); console.log('VantComponents object:', VantComponents); // 检查组件是否可用 if (typeof VantComponents === 'undefined') { return React.createElement( 'div', { className: 'container' }, React.createElement('h1', { style: { color: 'red' } }, '❌ VantComponents 未加载'), React.createElement('p', null, '请检查lowcode构建文件是否正确加载'), ); } const { Input: VantInput, MrInput } = VantComponents; return React.createElement( 'div', { className: 'container' }, React.createElement('h1', null, '🧪 输入组件测试'), // 测试1: 原生HTML input React.createElement( 'div', { className: 'test-case' }, React.createElement('div', { className: 'test-title' }, '1. 原生HTML Input'), React.createElement('input', { type: 'text', placeholder: '请输入内容', value: inputValue, onChange: (e) => setInputValue(e.target.value), style: { width: '100%', padding: '10px', border: '1px solid #ddd', borderRadius: '4px', fontSize: '14px', }, }), React.createElement('div', { className: 'result' }, `输入值: "${inputValue}"`), ), // 测试2: Vant Input(如果存在) VantInput && React.createElement( 'div', { className: 'test-case' }, React.createElement('div', { className: 'test-title' }, '2. Vant Input'), React.createElement(VantInput, { placeholder: '请输入内容', onChange: (value) => { console.log('Vant Input onChange:', value); setInputValue(value); }, style: { width: '100%' }, }), React.createElement('div', { className: 'result' }, `Vant输入值: "${inputValue}"`), ), // 测试3: MrInput MrInput && React.createElement( 'div', { className: 'test-case' }, React.createElement('div', { className: 'test-title' }, '3. MrInput'), React.createElement(MrInput, { placeholder: '请输入内容', value: mrinputValue, onChange: (value) => { console.log('MrInput onChange:', value); setMrinputValue(value); }, style: { width: '100%' }, }), React.createElement('div', { className: 'result' }, `MrInput值: "${mrinputValue}"`), ), // 测试4: MrInput简化版 MrInput && React.createElement( 'div', { className: 'test-case' }, React.createElement('div', { className: 'test-title' }, '4. MrInput (无样式)'), React.createElement(MrInput, { placeholder: '简单输入框', type: 'text', onChange: (value) => { console.log('Simple MrInput onChange:', value); }, }), React.createElement('div', { className: 'result' }, '检查控制台日志'), ), // 调试信息 React.createElement( 'div', { className: 'test-case' }, React.createElement('div', { className: 'test-title' }, '🔍 调试信息'), React.createElement( 'div', { className: 'result' }, React.createElement('div', null, `VantComponents类型: ${typeof VantComponents}`), React.createElement( 'div', null, `可用组件: ${VantComponents ? Object.keys(VantComponents).join(', ') : '无'}`, ), React.createElement('div', null, `MrInput存在: ${MrInput ? '✅' : '❌'}`), React.createElement('div', null, `VantInput存在: ${VantInput ? '✅' : '❌'}`), ), ), ); } ReactDOM.render(React.createElement(App), document.getElementById('root')); </script> </body> </html>