`
77rou
  • 浏览: 50667 次
社区版块
存档分类
最新评论

纯干货分享: 如何在 React 框架中使用SpreadJS

阅读更多

首先,我们需要在页面中添加对React的引用:

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8" />
        <title>SpreadJS React Demo</title>
        <script src="https://unpkg.com/react@16/umd/react.development.js"></script>
        <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
    </head>
    </html>
    

在这个页面中,我们将使用Babel的预编译版本(称为babel-standalone),因此我们也会添加一个对此的引用:

<script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"></script>

最后,添加对Spread.Sheets的引用:

    <script src="http://cdn.grapecity.com/spreadjs/hosted/scripts/gc.spread.sheets.all.11.0.0.min.js"></script>
    <link rel="stylesheet" type="text/css" href="http://cdn.grapecity.com/spreadjs/hosted/css/gc.spread.sheets.excel2013white.11.0.0.css">

在我们编写任何脚本之前,我们需要定义一个DIV元素来包含Spread实例。我们称之为“root”。

    <div id="root"></div>

第2步:为Spread.Sheets创建一个React类

接下来,在页面中添加一个脚本元素。我们将把所有的代码放在这里:

    <script type="text/babel"></script>

然后,为Spread.Sheets定义一个React组件,以便我们可以定义一个扩展React.Component的类:

    class ReactSpreadJS extends React.Component{
    }

该类需要在其中定义componentDidMount和render函数。componentDidMount函数在组件被挂载后立即被调用,所以我们用它来初始化Spread实例:

    componentDidMount() {
        //In the DidMount life cycle, we initialize Spread Sheet instance, and the host is defined in the Component template.
        let spread = new GC.Spread.Sheets.Workbook(this.refs.spreadJs, {sheetCount: 3});
    
        if(this.props.workbookInitialized){
            this.props.workbookInitialized(spread);
        }
    }

接下来,在渲染函数中定义Spread.Sheets DOM元素:

    render() {
        //Define the Spread.Sheets DOM template
        return(
            <div ref="spreadJs"  style={{width:'100%',height:'100%'}}>
            </div>);
    }

第3步:为组件创建一个应用程序类

首先,通过App类定义应用程序React组件:

    //Define the application react component.
    class App extends React.Component{
    }

接下来,添加一个您将调用ReactSpreadJS组件的渲染函数:

    render(){
        //In the root component, it include one ReactSpreadJS component.
        return(
                <div style={{width:'800px',height:'600px'}}>
                    <ReactSpreadJS workbookInitialized = {(spread)=>{console.log(spread)}}>
    
                    </ReactSpreadJS>
                </div>
        )
    }

要完成脚本,请告诉React通过使用ReactDOM.render来初始化应用程序:

    ReactDOM.render(
        //Main entry, initialize application react component.
            <App/>,
        document.getElementById('root')
    );

这就是使用React将Spread.Sheets添加到HTML页面所需的全部内容。这只是React和Spread.Sheets的基本使用,但可以轻松扩展。

SpreadJS下载链接:http://www.grapecity.com.cn/download/?pid=57

SpreadJS官网链接:http://www.grapecity.com.cn/developer/spreadjs


关于SpreadJS前端表格控件

SpreadJS 纯前端表格控件是基于 HTML5 的 JavaScript 电子表格和网格功能控件,适用于.NET、Java 、Web应用程序、移动端等多种平台的表格数据处理和类Excel功能的表格程序开发。全中文操作界面,零学习成本!便于您在系统开发过程中,更安全的管理Excel 数据,更快捷的完成海量数据交互,更方便的进行数据导出、导入、排序、过滤、增删改查、可视化及Excel 导入/导出等操作。SpreadJS自面世以来,备受华为、中通、中国民航飞行学院、中国平安 、中国能建、浪潮等国内知名企业客户青睐。

分享到:
评论

相关推荐

    React框架:深度解析与应用场景

    React框架:深度解析与应用场景 仅供学习交流! 后续会持续分享相关资源,记得关注哦! React框架:深度解析与应用场景 React框架:深度解析与应用场景 React框架:深度解析与应用场景 React框架:深度解析与应用...

    React框架 React框架 React框架

    React框架 React框架 React框架

    前端开源库-react-clipboard.js

    它基于clipboard.js库,并将其功能与React组件体系结构相结合,提供了简单易用的API,使得在React应用中添加“复制到剪贴板”的功能变得非常便捷。 **主要功能** 1. **复制文本**:React-Clipboard.js的核心功能是...

    前端开发框架 React 离线 js 类库 (react @16.8.0)

    包含如下四个文件: - react.development.js,react核心库; - react-dom.development.js,支持react操作DOM; - babel.min.js,用于将jsx转为js; - prop-types.js,用户检查组件的 Props。

    react-学习react框架推荐

    5. Hooks介绍:React 16.8引入了Hooks,如`useState`、`useEffect`、`useRef`等,它们使得在函数组件中使用状态和生命周期方法成为可能,大大简化了代码结构。 6. `useState`:用于在函数组件中添加状态变量,同时...

    React应用框架:一个使用React构建本地应用程序的框架

    在本主题中,“React应用框架”指的是利用React技术栈来构建本地桌面应用程序的方法。React.js,通常简称为React,是这个框架的核心部分,它提供了一种声明式编程方式来描述用户界面,并通过组件化思想简化了UI开发...

    AR-Test-2:在 React 中使用three.js 实现使用AR.js

    React 中使用实现使用 如何运行这个项目? git clone https://github.com/denisstasyev/AR-Test-2.git cd AR-Test-2 node testServer.js npm start或sudo npm start 在浏览器中访问http://localhost:3000并...

    React所需的三个js文件3--babel.min.js.zip

    `babel.min.js`之所以带有".min"后缀,意味着它已经过压缩和优化,体积更小,加载速度更快,适合在生产环境中使用。在HTML文件中,通常会将这个文件通过`&lt;script&gt;`标签引入到`&lt;head&gt;`部分,以确保在页面加载时能够...

    知识领域: Web开发 技术关键词: React框架 内容关键词: 组件化前端开发与状态管理

    用途: 用于构建可扩展、高性能的用户界面,特别是在单页应用(SPA)的开发中。 对资源的描述: React是一个由Facebook开发的JavaScript库,用于构建用户界面,特别是单页应用。它采用组件化的方式,允许开发者将界面...

    react.js完整安装包

    在学习React时,你可以查看`examples`目录中的代码,了解如何创建组件,处理事件,使用props和state,以及与其他库(如React Router)集成。同时,`src`目录下的源码对于深入理解React的内部机制非常有价值。 在...

    react框架所需js资源文件

    在这个"react框架所需js资源文件"的压缩包中,我们可能找到了React的核心库和其他相关依赖文件,这些都是开发React应用时必不可少的元素。 1. **React核心库**:React.js是React框架的核心文件,包含了React库的...

    React框架资源程序:React提供的移动应用程序框架

    "React框架资源程序:React提供的移动应用程序框架"这个标题暗示我们将探讨React在构建移动应用中的角色和相关资源。 React的核心理念是组件化,它允许开发者将UI分解为独立、可重用的组件,每个组件都有自己的状态...

    JavaScript:前端框架入门:React基础

    ### JavaScript:前端框架入门:React基础 #### 一、React简介与环境搭建 ##### 1. React的历史与特点 **1.1 React的历史** React是由Facebook开发并维护的一个用于构建用户界面的JavaScript库。它最初在2013年...

    基于React框架 仿钉钉审批流、工作流源代码

    在IT行业中,React框架是开发高效、高性能用户界面的首选工具之一,尤其在构建复杂的Web应用程序时。"基于React框架 仿钉钉审批流、工作流源代码"这个项目,显然是利用React的强大功能来模拟和实现类似钉钉的审批...

    react框架js文件

    在生产环境中,通常会使用压缩和优化过的`react.production.min.js`来提升性能。 `react-dom.development.js`是React与实际DOM交互的部分。它扩展了React的功能,使得React组件可以直接操作浏览器的DOM。在开发过程...

    react-hook-videojs:使用钩子轻松实现Video.js的React集成

    react-hook-videojs 一个简单的React钩子,可轻松将video.js与React集成react-hook-videojs 由于video.js如何更改DOM,因此将video.js与React集成可能会有些棘手。 特别是如果您想支持video.js组件更新并正确处理...

    使用React作为前端框架,Node.js(Express)作为后端框架来搭建一个前后端分离的系统.zip

    使用React作为前端框架,Node.js(Express)作为后端框架来搭建一个前后端分离的系统.zip 使用React作为前端框架,Node.js(Express)作为后端框架来搭建一个前后端分离的系统.zip 使用React作为前端框架,Node.js...

    screenfull-react:一个实现screenfull.js的React组件

    react yarn add screenfull-react 用使用全屏React有两种方法: 让它滚动执行(适用于移动设备) 强制全屏(适用于弹出窗口和其他单击触发的事件) 在其他方面,只需将添加到您的组件中即可。特性scrollContainerRef...

    react下的react.min.js和react-dom.js

    在React生态系统中,`react.min.js`和`react-dom.js`是两个核心库文件。 `react.min.js`是React库的压缩版本,"min"代表“最小化”,意味着它已经过混淆和压缩处理,以减少文件大小,提高网页加载速度。这个文件...

Global site tag (gtag.js) - Google Analytics