Skip to content

TNTSuperMan/Rjs

Repository files navigation

Rjs

simple, reactive, fast.

簡易的でリアクティブなフレームワークを目指して開発しています。

What

Reactとかのコード多いな~って、リアクティブの部分だけ作って
ウルトラ単純フレームワーク作りたいな~って。
そして生まれた。

  • Typescript対応
  • 完全()関数型
  • 内部伝達用オブジェクトは使わず、配列で伝達 → コードの無駄を無くす

How to use...

import {createVElement as ve, createVText as vt} from "./dist/R.esm.min.js";

function App(){
    return ve(
        "div", //Tag
        ()=>[vt(()=>"hello, world!")], //Content
        ()=>({id:"app"}), //Attr
        {} //Event
    )
}
document.body.appendChild(App().node);

グローバル変数について

Rjsをnode上でjsdomとか使いたい人向けです
設定すべきはwindowのみです。以下のようにしてください。

import * as R from "./dist/R.esm.min.js"
import {JSDOM} from "jsdom"
globalThis.window = new JSDOM().window;
//...Rjsのコード
console.log(R.createVText(()=>""));

CDN

npmで公開したらunpkgとかjsdelivrが出してくれるんですね

unpkg
unpkg(最小化)
ここで紹介している以外にもモジュール版、CommonJS版、AMD、SystemJS、UMDがあります。以下をご確認ください。
unpkg(リスト)