Giter Club home page Giter Club logo

react-onsenuix's Introduction

React OnsenUiX

This is a fork of the onsenui react package, I'm not happy about the syntax. I made this fork because the original package doesn't have typings, and this here.. is hardcore typed :). See thier documentation before using this!

Please keep in mind that this project an alpha is

Current Components

  • Page
    • renderToolbar
    • renderFixed
  • Button
  • Toolbar
    • Toolbar.Left
    • Toolbar.Center
    • Toolbar.Right
    • Toolbar.Button
  • Card
    • Card.Title
    • Card.Content
  • BackButton
  • List
    • List.Title
    • List.Item
  • Fab
  • SpeedDial
    • SpeedDial.Fab
    • SpeedDial.Item
  • Icon (Don't use, it crashes the style of the page)
  • BottomToolbar
  • Tabbar
  • RouterNavigator

Not Planned Components

  • Switch
  • Select
  • ActionSheet
  • GestureDetector

Create an App

import { createRoot } from "react-dom/client";
import { Card, Toolbar, SpeedDial, ActivityX, ActivityXRenderData } from "react-onsenuix";
import { Icon } from "react-onsenui";
import { Kard } from "./Card";

interface State {
  text: string;
}

class App extends ActivityX<{}, State> {
  constructor(props: any) {
    super(props);
    this.state = { text: "This is an simple application" };
  }

  public onCreateToolbar() {
    return (
      <Toolbar>
        <Toolbar.Center>Title</Toolbar.Center>
        <Toolbar.Right>
          <Toolbar.Button>
            <Icon icon="md-menu" />
          </Toolbar.Button>
        </Toolbar.Right>
      </Toolbar>
    );
  }

  public renderFixed() {
    return (
      <SpeedDial position="bottom right">
        <SpeedDial.Fab>
          <Icon icon="md-share" />
        </SpeedDial.Fab>
        <SpeedDial.Item onClick={() => console.log("Twitter")}>
          <Icon icon="md-twitter" />
        </SpeedDial.Item>
        <SpeedDial.Item onClick={() => console.log("Facebook")}>
          <Icon icon="md-facebook" />
        </SpeedDial.Item>
        <SpeedDial.Item onClick={() => console.log("Google+")}>
          <Icon icon="md-google-plus" />
        </SpeedDial.Item>
      </SpeedDial>
    );
  }

  public onCreate(d: ActivityXRenderData<{}, State>): JSX.Element {
    return (
      <section style={{ textAlign: "center" }}>
        <Kard />
      </section>
    );
  }
}

const app = document.createElement("app");
document.body.prepend(app);
const container = document.querySelector<Element>("app");
const root = createRoot(container!);
root.render(<App />);

Create an View

import { Card, ViewX } from "react-onsenuix";

class Kard extends ViewX<{}, {}, HTMLDivElement> {
  public createView() {
    return (
      <div>
        <Card>
          <Card.Title>Hello, world!</Card.Title>
          <Card.Content>Hello WORLD AGAIN!!</Card.Content>
        </Card>
      </div>
    );
  }
}

export { Kard };

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.