mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-09-10 11:40:16 +08:00
added tests and typings for mobservable and mobservable-react packages
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
/// <reference path="./mobservable-react.d.ts"/>
|
||||
/// <reference path="../react/react-global.d.ts" />
|
||||
|
||||
import {reactiveComponent} from 'mobservable-react';
|
||||
|
||||
{
|
||||
let c1 = reactiveComponent(React.createClass({
|
||||
getDefaultProps() {
|
||||
return {
|
||||
test: "hi"
|
||||
};
|
||||
},
|
||||
|
||||
render: function() {
|
||||
return React.createElement("div");
|
||||
}
|
||||
}));
|
||||
|
||||
let c1Factory = React.createFactory(c1);
|
||||
React.render(c1Factory({
|
||||
test: "hello"
|
||||
}), null);
|
||||
}
|
||||
|
||||
@reactiveComponent
|
||||
class TestComponent extends React.Component<{ test: string },{}> {
|
||||
render() {
|
||||
return React.createElement("div");
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
let c2Factory = React.createFactory(TestComponent);
|
||||
React.render(c2Factory({
|
||||
test: "hello"
|
||||
}) , null);
|
||||
}
|
||||
|
||||
{
|
||||
var c3 = reactiveComponent((props: { test: string }) => React.createElement("div"));
|
||||
var c3Factory = React.createFactory(c3); //without JSX
|
||||
React.render(c3Factory({
|
||||
test: "hello"
|
||||
}), null);
|
||||
}
|
||||
|
||||
|
||||
class TestComponent2 extends React.Component<{ test: string },{}> {
|
||||
render() {
|
||||
return React.createElement("div");
|
||||
}
|
||||
}
|
||||
{
|
||||
let c4Factory = React.createFactory(reactiveComponent(TestComponent2));
|
||||
React.render(c4Factory({
|
||||
test: "hello"
|
||||
}) , null);
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
--noImplicitAny --module commonjs --target es5 --experimentalDecorators
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
// Type definitions for mobservable v0.1.8
|
||||
// Project: https://github.com/mweststrate/mobservable-react
|
||||
// Definitions by: Michel Weststrate <https://github.com/mweststrate/>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../react/react-global.d.ts" />
|
||||
|
||||
declare module "mobservable-react" {
|
||||
/**
|
||||
* Turns a React component or stateless render function into a reactive component.
|
||||
*/
|
||||
export function reactiveComponent<P>(clazz: React.ClassicComponentClass<P>): React.ClassicComponentClass<P>;
|
||||
export function reactiveComponent<P>(clazz: React.ComponentClass<P>): React.ComponentClass<P>;
|
||||
export function reactiveComponent<P>(clazz: React.ComponentClass<P>): void; // for decorator
|
||||
export function reactiveComponent<P>(renderFunction: (props: P) => React.ReactElement<any>): React.ClassicComponentClass<P>;
|
||||
}
|
||||
Reference in New Issue
Block a user