<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          React DesktopReact UI 桌面組件

          聯(lián)合創(chuàng)作 · 2023-09-23 08:37

          React Desktop 是基于 Facebook ReactJS 的 JavaScript 庫(kù),為 OS X EI Capitan 和 Windows 10 提供 Web 原生桌面體驗(yàn),支持 node-webkitElectron.js,但可以在任意 JavaScript 驅(qū)動(dòng)的項(xiàng)目使用。

          在線演示:http://gabrielbull.github.io/react-desktop/demo/ 

          安裝:

          npm install react-desktop --save

          OS X El Capitan

          Windows 10

          簡(jiǎn)單使用:

          import React from 'react';
          import {
            Window,
            TitleBar, 
            PushButton, 
            TextField, 
            Toolbar, 
            Box, 
            SegmentedControl,
            IndeterminateCircularProgressIndicator,
            Form,
            Label
          } from 'react-desktop';
          class MyApp extends React.Component {
            constructor() {
              super();
              this.state = { selectedTab: 'login' };
            }
            render() {
              return (
                <Window>
                  <TitleBar 
                    title="My App" 
                    controls
                    onClosePress={() => { alert('close'); }}
                    onResizePress={() => { alert('resize'); }}
                    onMinimizePress={() => { alert('minimize'); }}
                  >
                    <Toolbar/>
                  </TitleBar>
                  <Box>
                    <SegmentedControl>
                      <SegmentedControl.Item 
                        title="Login"
                        selected={this.state.selectedTab === 'login'}
                        onPress={() => { this.setState({ selectedTab: 'login' }) } }
                      >
                        <Form onSubmit={() => { alert('submit'); }}>
                          <Label color="red">Error</Label>
                          <Form.Row>
                            <Label>Username</Label>
                            <TextField defaultValue="" placeholder="Username"/>
                          </Form.Row>
                          <Form.Row>
                            <PushButton onPress={() => { alert('cancel'); }}>Cancel</PushButton>
                            <PushButton onPress="submit" color="blue">Submit</PushButton>
                            <IndeterminateCircularProgressIndicator visible absolute/>
                          </Form.Row>
                        </Form>              
                      </SegmentedControl.Item>
                    </SegmentedControl>
                  </Box>
                </Window>
              );
            }
          }
          瀏覽 28
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人大香蕉最新视频 | 翔田千里一区二区 | 男人天堂色色色 | 高清无码视频在线免费观看 | 人人肏人人 |