[]
        
首页
开发者学堂
文档
论坛
市场
生态机会
活动
立即试用
(Showing Draft Content)

UMD 支持

SpreadJS支持适用于任何地方的JavaScript模块的UMD(通用模块定义)模式。

通常,SpreadJS中的UMD模式包括对AMD(异步模块依赖)和CommonJS的支持,这两种模块规范使开发人员能够以模块化方式编写代码。 使用UMD模式进行的模块化编程不仅有助于实现代码的可重用性,而且可以在节省大量时间和资源的同时提高代码效率。 除此之外,它还可以帮助您提供一些常见编程问题的解决方案,而不必依赖于在使用JavaScript进行编码时按特定顺序编写脚本。

SpreadJS中的以下六个javascript文件支持UMD模式:

  • gc.spread.sheets.all.xxx.js
  • gc.spread.sheets.print.xxx.js
  • gc.spread.sheets.pdf.xxx.js
  • gc.spread.sheets.charts.xxx.js
  • gc.spread.sheets.resources.xx.xxx.js
  • gc.spread.excelio.xxx.js

使用AMD

可以异步加载AMD(浏览器优先)依赖项,以避免浏览器可能失去响应的情况。

以下代码显示了如何配置RequireJS,使用AMD初始化SpreadJS以及如何将Excel IO Spread与AMD一起使用。

// 配置RequireJS
<script type="text/javascript">
    requirejs.config({
       "baseUrl": "./lib",
       "paths": {
          "gc-spread-sheets": "gc.spread.sheets.all.13.0.0",
          "gc-spread-excelio": "gc.spread.excelio.13.0.0"
        }
    });
</script>
// 初始化 SpreadJS 和 ExcelIO
    <script type="text/javascript">
    var spread, excelIo, json;
    require(['gc-spread-sheets', 'gc-spread-excelio'], function (gc, excel) {
       spread = new gc.spread.sheets.Workbook(document.getElementById("ss"));
       excelIo = new excel.IO();
   });
function SaveExcel(){
 json = spread.toJSON();
 excelIo.save(json, function (blob) {
       //将Blob保存为Excel。
           saveAs(blob, "export.xlsx");
      }, function (e) {
      if (e.errorCode === 1) {
        alert(e.errorMessage);
      }
   });
}
</script>

使用CommonJS

Common JS(服务器优先)依赖性使javascript代码在集成开发环境(IDE)中运行。

以下代码显示了如何使用Common JS初始化SpreadJS。

var gc = require('../lib/gc.spread.sheets.all.x.x.x.min.js');
window.onload = function() {
var workbook = new gc.spread.sheets.Workbook(document.getElementById('ss'));
}
var gc = require('../lib/gc.spread.sheets.all.x.x.x.min.js');
var excel = require('../lib/gc.spread.excelio.x.x.x.min.js');
window.onload = function() {
var workbook = new gc.spread.sheets.Workbook(document.getElementById('ss'));
var json = JSON.stringify(workbook.toJSON());
var excelIo = new excel.IO();
excelIo.save(json, function (blob) {
    //将Blob保存到excel文件。
    }, function (e) {
    if (e.errorCode === 1) {
        alert(e.errorMessage);
    }
});
}