[{"id":"7720ca38-fc98-4fd8-a3a5-3c0e730c3c72","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"247ded67-b050-4436-be40-fe7b0eeabef7","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"9a8c377f-1f1e-476e-b487-c2339da9bed3","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"5e8e6db2-89b9-4184-bbdc-301ee676869e","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"e04b598e-b0d8-4054-bdac-5143d90b3d51","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"edb028d0-a8cc-42b2-acda-42a5515729f0","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"2adde444-20a6-43d7-8896-2b445877327a","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"6ab8ced2-6c7a-41b6-b861-ba066bd40f40","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"0c34aedd-80a3-470b-a0f6-c327a4346be7","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"717a5892-fa23-499b-a61d-cff228943aaf","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"bd9be971-69fc-4793-ad6d-234be7a93048","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"a1e8d38f-43d8-4b3e-b747-3fbf7656fcd9","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"d6995fdf-76ee-421f-9e7a-3fb324d14bbb","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"64fa3155-4543-4acd-83b7-f9860fd46673","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"698413bd-0b16-4287-baec-644d98a411d1","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7e4393a0-21ef-438b-981b-325b64db5baa","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]}]
        
(Showing Draft Content)

Shape要素

ReactでShape要素を使用すると、ワークシートに正方形、円、長方形、三角形、五角形、六角形、八角形などのような幾何学的シェイプをすばやく簡単に埋め込んでレンダリングできます。

  1. Reactアプリを作成する

    コマンドプロンプトウィンドウを開き、次のコマンドを入力します。

    npm install -g create-react-app
    create-react-app quick-start
    cd quick-start
    npm start

    コマンドを実行すると、ディレクトリ内の指定の場所にReactプロジェクトが作成されます。Reactプロジェクトの詳しい作成方法については、https://ja.reactjs.org/docs/create-a-new-react-app.html を参照してください。


  2. プロジェクトにSpread.Sheets Reactモジュールをインストールする

    Spread.Sheets Reactモジュール、および日本語リソースを、npmからインストールします。

    npm install @grapecity/spread-sheets
    npm install @grapecity/spread-sheets-react
    npm install @grapecity/spread-sheets-resources-ja
  3. スタイルをインポートする

    index.jsファイルで、スタイルファイルをインポートします。```

    import '@grapecity/spread-sheets/styles/gc.spread.sheets.excel2013white.css';


  4. プロジェクトでシェイプのReactモジュールをインストールする

    次のコマンドを使用して、プロジェクトにシェイプのモジュールをインストールする必要があります。

    npm install @grapecity/spread-excelio
    npm install file-saver --save


  5. Reactアプリケーションでチャートを使用する

    必要に応じてApp.jsファイルを変更できます。 ブラウザウィンドウが更新されると、変更が反映されます。次のサンプルコードを使用します。

    次のサンプルコードは、Reactアプリケーションでシェイプを使用する方法を示します。

    import React from 'react';
    import './App.css';
    import GC from '@grapecity/spread-sheets';
    import { SpreadSheets, Worksheet } from '@grapecity/spread-sheets-react';
    
    // ExcelIOモジュールをインポートします。
    import * as ExcelIO from "@grapecity/spread-excelio";
    
    // file-saverモジュールをインポートします。
    import saveAs from 'file-saver';
    var SpreadJSKey = "xxx";
    GC.Spread.Sheets.LicenseKey = SpreadJSKey;
    
    // 同じライセンスキーを使用して、Excel IOモジュールのライセンスを個別に取得する必要があります。
    ExcelIO.LicenseKey = SpreadJSKey;
    class App extends React.Component {
        constructor(props) {
            super(props);
            this.hostStyle =
                {
                    width: '1100px',
                    height: '800px'
                };
        }
    
    // ワークブックのinitializedイベントを処理します。
        workbookInit = (spread) => {
            this.setState({
                spread: spread
            });
        }
    // Excelをインポートします。
        importFile = () => {
            var excelFile = document.getElementById("fileDemo").files[0];
            // IOクラスのインスタンスを取得します。
            let excelIO = new ExcelIO.IO();
            excelIO.open(excelFile, (json) => {
                this.state.spread.fromJSON(json);
            }, (e) => {
                console.log(e);
            });
        }
    // Excelをエクスポートします。
        exportFile = () => {
            // IOクラスのインスタンスを取得します。
            let excelIO = new ExcelIO.IO();
            let fileName = document.getElementById("exportFileName").value;
            if (fileName.substr(-5, 5) !== '.xlsx') {
                fileName += '.xlsx';
            }
            var json = JSON.stringify(this.state.spread.toJSON());
            excelIO.save(json, (blob) => {
                saveAs(blob, fileName);
            }, (e) => {
                console.log(e);
            });
        }
        render() {
            return (
                <div>
                    <input type="file" name="files[]" id="fileDemo" accept=".xlsx" />
                    <input type="button" id="loadExcel" value="Import" onClick={this.importFile} />
                    <input type="button" id="saveExcel" value="Export" onClick={this.exportFile} />
                    <input type="text" id="exportFileName" placeholder="エクスポートするファイルの名前。" value="export.xlsx" />
                    <SpreadSheets backColor={this.spreadBackColor} hostStyle={this.hostStyle} workbookInitialized={this.workbookInit}>
                        <Worksheet>
                        </Worksheet>
                    </SpreadSheets>
                </div>
            )
        }
    }
    export default App;