[]
SpreadJS는 모든 환경에서 동작하는 JavaScript 모듈을 위한 UMD(Universal Module Definition) 패턴을 지원합니다.
일반적으로 SpreadJS의 UMD 패턴은 AMD(Asynchronous Module Dependency)와 CommonJS를 지원하며, 이는 개발자가 모듈 방식으로 코드를 작성할 수 있게 하는 모듈 사양입니다.
UMD 패턴을 사용한 모듈 프로그래밍은 코드 재사용성을 높이고, 효율성을 향상시키며 상당한 시간과 자원을 절약할 수 있습니다. 또한 JavaScript에서 코드를 작성할 때 특정 순서로 스크립트를 작성할 필요 없이 일반적인 프로그래밍 문제에 대한 솔루션을 제공하는 데 도움을 줄 수 있습니다.
SpreadJS는 이제 모듈 사용과 해당 플러그인 및 리소스 사용을 포함하여 UMD 패턴을 완전히 지원합니다.
AMD(브라우저 우선) 의존성은 비동기적으로 로드되어 브라우저가 응답을 잃는 상황을 방지할 수 있습니다.
다음 코드 샘플은 RequireJS를 구성하고 AMD를 사용하여 SpreadJS를 초기화하는 방법을 보여줍니다.
// RequireJS 구성
<script type="text/javascript">
requirejs.config({
"baseUrl": "./lib",
"paths": {
"spread-sheets": "gc.spread.sheets.all.x.x.x",
"spread-sheets-io": "gc.spread.sheets.io.x.x.x"
}
});
</script>
// SpreadJS 초기화
<script type="text/javascript">
require(['spread-sheets', 'spread-sheets-io'], function (GC) {
var spread = new GC.spread.sheets.Workbook("ss");
saveToExcel(spread);
});
function saveToExcel(spread) {
spread.export(function (blob) {
// blob을 엑셀로 저장
}, function (e) {
if (e.errorCode === 1) {
alert(e.errorMessage);
}
});
}
</script>
CommonJS(서버 우선) 의존성은 JavaScript 코드를 통합 개발 환경(IDE)에서 실행할 수 있게 합니다.
다음 코드 샘플은 CommonJS를 사용하여 SpreadJS를 초기화하는 방법을 보여줍니다.
var GC = require('@mescius/spread-sheets');
require('@mescius/spread-sheets-io');
var spread = new GC.Spread.Sheets.Workbook();
spread.export(function(blob){
// blob을 엑셀 파일로 저장
},function(e){
if (e.errorCode){
console.error(e.errorMessage);
}
});