作者:葡萄城控件
SpreadJS最好的功用之一就是能夠在差別的框架中運用它。本文將演示如安在簡樸的Web頁面中運用Babel JavaScript編譯器將SpreadJS與React疾速連繫。
第1步:設置HTML5頁面
起首,我們須要在頁面中增加對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前端表格控件
SpreadJS 純前端表格控件是基於 HTML5 的 JavaScript 電子錶格和網格功用控件,適用於.NET、Java 、Web應用順序、挪動端等多種平台的表格數據處理和類Excel功用的表格順序開闢。全中文操縱界面,零進修本錢!便於您在系統開闢過程當中,更安然的治理Excel 數據,更快速的完成海量數據交互,更輕易的舉行數據導出、導入、排序、過濾、增編削查、可視化及Excel 導入/導出等操縱。SpreadJS自面世以來,備受華為、中通、中國民航遨遊飛翔學院、中國安然 、中國能建、海潮等國內知名企業客戶喜愛。