Skip to content

Commit 174bc7a

Browse files
committed
change
1 parent c9ccb60 commit 174bc7a

File tree

2 files changed

+18
-18
lines changed

2 files changed

+18
-18
lines changed

README.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
## Enhancer三方组件 xlsx-parser 使用说明
22
### 简介
3-
- xlsx-parser是基于[Enhancer](https://enhancer.io)平台开发的组件, 能在此平台上良好运行
3+
- xlsx-parser是基于[Enhancer](https://enhancer.io)平台开发的组件。
44
- xlsx-parser可将 数据 , Html 和 Excel 任意转换。
55

66
### 生成界面
@@ -32,7 +32,6 @@
3232
- 将Excel导入并解析为多种格式数据
3333
- 可通过页面简单修改Excel文件
3434

35-
3635
### 可用事件说明
3736
#### 加载Excel(On Excel Loaded)
3837
- 【事件 ID】onExcelLoaded
@@ -46,7 +45,6 @@
4645
- 【事件 ID】onSheetClick
4746
- 【触发时机】单击页面上表格时。
4847

49-
5048
#### 单元格获得焦点(On Cell Focus)
5149
- 【事件 ID】onCellFocus
5250
- 【触发时机】页面表格单元获得焦点时(编辑)。
@@ -121,7 +119,5 @@
121119
- 【说明】当前单元格内容
122120
- 【示例】"统计"
123121

124-
125122
### 其它
126-
- [Enhancer 教程](https://enhancer.io/tutorials)
127123
- [Enhancer 社区](https://forum.enhancer.io/#p=1&t=5)

src/widget/index.js

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,21 @@
11
require('./index.less');
22
var locale = require('./i18n');
33
var tpl = require('./index.html');
4-
var XLSX = require('xlsx');
4+
55
Enhancer.registerWidget({
66
construct: function(profile, zContext) {
7+
this.XLSX = require('xlsx');
8+
79
profile = $.extend({
810
loadData: false,
911
editExcel: true,
1012
outputExcel: true
1113
}, profile);
14+
15+
var that = this;
1216
var $container = this.getContainer();
1317
this.profile = profile;
1418
this.$container = $container;
15-
var that = this;
1619
this.workbook = {};
1720
this.excelName = 'download.xlsx';
1821
$container.html(tpl({
@@ -25,7 +28,7 @@ Enhancer.registerWidget({
2528
function updateWb() {
2629
var $table = $container.find('.sheetWindow table');
2730
var name = $table.attr('id');
28-
var data = XLSX.utils.table_to_sheet($table[0]);
31+
var data = that.XLSX.utils.table_to_sheet($table[0]);
2932
$container.find('.sheets a[name="' + name + '"]').data('sheet', data);
3033
$container.find('.sheets a').map(function() {
3134
var name = $(this).attr('name');
@@ -62,7 +65,7 @@ Enhancer.registerWidget({
6265
}
6366
}
6467
})
65-
var table = XLSX.utils.sheet_to_html(sheet, {
68+
var table = that.XLSX.utils.sheet_to_html(sheet, {
6669
id: name,
6770
editable: true
6871
});
@@ -79,7 +82,7 @@ Enhancer.registerWidget({
7982
$container.find('#outputExcel').click(function() {
8083
if (that.workbook.Sheets) {
8184
updateWb();
82-
XLSX.writeFile(that.workbook, that.excelName);
85+
that.XLSX.writeFile(that.workbook, that.excelName);
8386
that.trig('onExcelOutputed');
8487
}
8588
})
@@ -140,7 +143,7 @@ Enhancer.registerWidget({
140143
if (CURR_SHEET_NAME) {
141144
CURR_SHEET = this.workbook.Sheets[CURR_SHEET_NAME]
142145
}
143-
var CURR_SHEET_TO_JSON = XLSX.utils.sheet_to_json(CURR_SHEET);
146+
var CURR_SHEET_TO_JSON = this.XLSX.utils.sheet_to_json(CURR_SHEET);
144147
var CURR_SHEET_ROWS = CURR_SHEET_TO_JSON.length;
145148
var CURR_SHEET_COLS = 0;
146149
CURR_SHEET_TO_JSON.forEach(function(val) {
@@ -156,9 +159,9 @@ Enhancer.registerWidget({
156159
CURR_CELL_CONTENT = CURR_SHEET[CURR_CELL_POS].v;
157160
}
158161
for (var key in this.workbook.Sheets) {
159-
SHEETS_TO_CSV[key] = XLSX.utils.sheet_to_csv(this.workbook.Sheets[key]);
160-
SHEETS_TO_JSON[key] = XLSX.utils.sheet_to_json(this.workbook.Sheets[key]);
161-
SHEETS_TO_FORMULAE[key] = XLSX.utils.sheet_to_formulae(this.workbook.Sheets[key]);
162+
SHEETS_TO_CSV[key] = this.XLSX.utils.sheet_to_csv(this.workbook.Sheets[key]);
163+
SHEETS_TO_JSON[key] = this.XLSX.utils.sheet_to_json(this.workbook.Sheets[key]);
164+
SHEETS_TO_FORMULAE[key] = this.XLSX.utils.sheet_to_formulae(this.workbook.Sheets[key]);
162165
}
163166
var data = {
164167
'EXCEL_DATA': EXCEL_DATA,
@@ -186,12 +189,13 @@ Enhancer.registerWidget({
186189
var that = this;
187190
if (profile.loadData) {
188191
this.getSourceData(profile.srcId, {}, function(data){
192+
console.log(data);
189193
if (data.rows) {
190194
data = data.rows;
191195
}
192-
that.workbook = XLSX.utils.book_new();
193-
var sheet = XLSX.utils.json_to_sheet(data);
194-
XLSX.utils.book_append_sheet(that.workbook, sheet, 'Sheet1');
196+
that.workbook = that.XLSX.utils.book_new();
197+
var sheet = that.XLSX.utils.json_to_sheet(data);
198+
that.XLSX.utils.book_append_sheet(that.workbook, sheet, 'Sheet1');
195199
that.__initSheet();
196200
that.trig('complete');
197201
})
@@ -224,7 +228,7 @@ Enhancer.registerWidget({
224228
that.excelName = f.name;
225229
var reader = new FileReader();
226230
reader.onload = function (e) {
227-
that.workbook = XLSX.read(new Uint8Array(e.target.result), {
231+
that.workbook = that.XLSX.read(new Uint8Array(e.target.result), {
228232
type: 'array',
229233
cellFormula: false,
230234
cellHTML: true,

0 commit comments

Comments
 (0)