React框架内使用GridManager

@拭目以待:首发于Angular框架内使用GridManager

GridManager- github地址是原生实现,不依赖任何框架。那么在React框架中如何将其便捷的使用?

将GridManager配置为组件

// 定义表格组件
var ReactGridManager = React.createClass({
    render: function () {
        return <table data-name={this.props.gridManagerName}></table>;
    },
    componentDidMount: function () {
        var table = document.querySelector('table[data-name="'+this.props.gridManagerName+'"]');
        table.GM(this.props);
    }
});

使用配置好的组件

// 配置GridManager init 必要参数
var colData = [{
        key: 'name',
        remind: 'the name',
        width: '100px',
        text: '名称',
        sorting: ''
    },{
        key: 'info',
        remind: 'the info',
        text: '使用说明'
    },{
        key: 'url',
        remind: 'the url',
        text: 'url'
    },{
        key: 'createDate',
        remind: 'the createDate',
        width: '100px',
        text: '创建时间',
        sorting: 'DESC',
        template: function(createDate, rowObject){
            return new Date(createDate).format('YYYY-MM-DD HH:mm:ss');
        }
    },{
        key: 'lastDate',
        remind: 'the lastDate',
        width: '100px',
        text: '最后修改时间',
        sorting: '',
        template: function(lastDate, rowObject){
            return new Date(lastDate).format('YYYY-MM-DD HH:mm:ss');
        }
    },{
        key: 'action',
        remind: 'the action',
        width: '100px',
        text: '操作',
        template: function(action, rowObject){
            return '<span class="plugin-action edit-action" learnLink-id="'+rowObject.id+'">编辑</span>'
                    +'<span class="plugin-action del-action" learnLink-id="'+rowObject.id+'">删除</span>';
        }
}];
var queryInfo = {pluginId: 1};
ReactDOM.render(
    <div>
        <h1>通过React 使用 GridManager</h1>
        <ReactGridManager
                gridManagerName="testReact"
                height="auto"
                columnData={colData}
                supportRemind={true}
                isCombSorting= {true}
                supportAjaxPage={true}
                supportSorting={true}
                ajax_url="http://www.lovejavascript.com/learnLinkManager/getLearnLinkList"
                ajax_type="POST"
                query= {queryInfo}
                pageSize={30}
        />
    </div>,
    document.querySelector('#example')
);

@拭目以待

个人站点:www.lovejavascript.com
表格管理插件:gridmanager.lovejavascript.com && github地址
QQ交流群 (452781895):How To Make Love
微信公众账号:loveJavascript

《野生前端工程师》专辑中所有文章均为@拭目以待 原创,转载请注明出处。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,302评论 25 708
  • 今天坐高铁回家乡,要陪伴年已七旬的父母过中秋节。下了高铁即乘坐公交车直奔父母家。一放下行李,就随同母亲和姐姐一起,...
    熠心励行阅读 299评论 0 1
  • 简单的ssh小实例 一个scp的小实例 通过ssh-keygen命令 ssh-keygen 也可直接使用命令将公钥...
    xin激流勇进阅读 603评论 0 0
  • 曾经听说过穿越回过去,祈求改变自己将来的悖论。但那些只是美妙的幻想而已。我们尽管无所感知,时间还是一直在前进。 劝...
    曟卌阅读 280评论 0 0
  • DPL预选赛,比赛结果1:1 两局共同点:显然WINGS已经会针对VG了,BAN VS和先知,抢兽王。基本就GG。...
    春愿君阅读 139评论 0 0