找回密码
 立即注册

QQ登录

只需一步,快速开始

贴吧王大锤

注册会员

1

主题

10

帖子

28

积分

注册会员

积分
28
最新发帖
贴吧王大锤
注册会员   /  发表于:2021-7-5 16:58  /   查看:4196  /  回复:13
在 typescript 和 react 中使用 excelIO,在尝试赋值 LicenseKey 时,报错:类型“typeof Excel”上不存在属性“LicenseKey”


import * as spreadExcel from '@grapecity/spread-excelio';

const SpreadJSKey = '';

spreadExcel.LicenseKey = SpreadJSKey;



13 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-7-6 10:25:11
推荐
本帖最后由 Clark.Pan 于 2021-7-29 13:45 编辑
贴吧王大锤 发表于 2021-7-6 09:45
你好。我看了下,确实是v14的授权,是 - 后面的么?还是从Designer开始?
感谢您订购葡萄城企业软件产品 ...

开发授权是下面红框开头的,Designer开头是用于激活本地设计器的
image.png175020140.png

-------------------------------------------------------------------------------------
导致该问题的原因是授权版本与SpreadJS版本不一致:授权用了V14的授权,SpreadJS用的是V13的版本。
SpreadJS的授权需要跟SpreadJS本身在大版本上保持一致,举个例子:
V13的授权适用于SpreadJS V13.0.0~ V13.X.X的版本。
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-7-5 17:30:43
沙发
请参考下图的方式添加
image.png483035582.png
回复 使用道具 举报
贴吧王大锤
注册会员   /  发表于:2021-7-5 17:55:57
板凳
本帖最后由 贴吧王大锤 于 2021-7-5 18:05 编辑
Derrick.Jiao 发表于 2021-7-5 17:30
请参考下图的方式添加

运行时报错

TypeError: Cannot read property 'name' of undefined
b.a
D:/imur-project/insight-web/node_modules/@grapecity/spread-sheets-react/dist/gc.spread.sheets.react.min.js:12


代码如下:

贴吧王大锤
注册会员   /  发表于:7 分钟前地板




贴吧王大锤 发表于 2021-7-5 17:55
运行时报错

TypeError: Cannot read property 'name' of undefined


import React, { FC } from 'react';
import GC from '@grapecity/spread-sheets';
import { SpreadSheets, Worksheet } from '@grapecity/spread-sheets-react';
import * as spreadExcel from '@grapecity/spread-excelio';

console.log(spreadExcel);
// eslint-disable-next-line max-len
const SpreadJSKey = '';
GC.Spread.Sheets.LicenseKey = SpreadJSKey;
(spreadExcel as any).LicenseKey = SpreadJSKey;

interface ExcelProps {
  url: string,
}

const Excel: FC<ExcelProps> = ({ url }: ExcelProps) => {
  const importFile = (spread: any) => {
    const excelIO = new spreadExcel.IO();
    const request = new XMLHttpRequest();
    request.open('get', url, true);
    request.responseType = 'blob';
    request.onload = () => {
      const blob = request.response;
      excelIO.open(blob, (json: Object) => {
        spread.fromJSON(json);
      }, (e: string) => {
        console.log(e);
      });
    };
    request.send(null);
  };

  const excelInit = (spread: any) => {
    // setWorkbook(spread);
    importFile(spread);
  };

  return (
    <div>
      <SpreadSheets
        workbookInitialized={excelInit}
      >
        <Worksheet />
      </SpreadSheets>

    </div>

  );
};

export default Excel;



回复 使用道具 举报
贴吧王大锤
注册会员   /  发表于:2021-7-5 17:57:49
地板
贴吧王大锤 发表于 2021-7-5 17:55
运行时报错

TypeError: Cannot read property 'name' of undefined

import React, { FC } from 'react';
import GC from '@grapecity/spread-sheets';
import { SpreadSheets, Worksheet } from '@grapecity/spread-sheets-react';
import * as spreadExcel from '@grapecity/spread-excelio';

console.log(spreadExcel);
// eslint-disable-next-line max-len
const SpreadJSKey = '';
GC.Spread.Sheets.LicenseKey = SpreadJSKey;
(spreadExcel as any).LicenseKey = SpreadJSKey;

interface ExcelProps {
  url: string,
}

const Excel: FC<ExcelProps> = ({ url }: ExcelProps) => {
  const importFile = (spread: any) => {
    const excelIO = new spreadExcel.IO();
    const request = new XMLHttpRequest();
    request.open('get', url, true);
    request.responseType = 'blob';
    request.onload = () => {
      const blob = request.response;
      excelIO.open(blob, (json: Object) => {
        spread.fromJSON(json);
      }, (e: string) => {
        console.log(e);
      });
    };
    request.send(null);
  };

  const excelInit = (spread: any) => {
    // setWorkbook(spread);
    importFile(spread);
  };

  return (
    <div>
      <SpreadSheets
        workbookInitialized={excelInit}
      >
        <Worksheet />
      </SpreadSheets>

    </div>

  );
};

export default Excel;
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-7-5 18:18:53
5#
贴吧王大锤 发表于 2021-7-5 17:57
import React, { FC } from 'react';
import GC from '@grapecity/spread-sheets';
import { SpreadShe ...

麻烦您把完整的demo通过下图的方式上传,这边调研一下。 image.png833408813.png
回复 使用道具 举报
贴吧王大锤
注册会员   /  发表于:2021-7-5 19:31:26
6#
是否与licensekey有关?

react-app.rar

434.46 KB, 下载次数: 122

回复 使用道具 举报
贴吧王大锤
注册会员   /  发表于:2021-7-5 19:33:35
7#
Derrick.Jiao 发表于 2021-7-5 18:18
麻烦您把完整的demo通过下图的方式上传,这边调研一下。

是否与 licensekey 有关?

react-app.rar

434.46 KB, 下载次数: 122

回复 使用道具 举报
贴吧王大锤
注册会员   /  发表于:2021-7-5 19:35:27
8#
贴吧王大锤 发表于 2021-7-5 19:31
是否与licensekey有关?

有点难受,还不能删除评论。。。
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-7-6 09:14:17
9#
贴吧王大锤 发表于 2021-7-5 19:35
有点难受,还不能删除评论。。。

我这边用14的授权测试了一下没有问题,推测就是您的授权问题,每个版本对应的授权都不一样,v14版本需要用v14的授权,v13版本需要用v13的授权。版本与授权不一致就会出现报错。
回复 使用道具 举报
贴吧王大锤
注册会员   /  发表于:2021-7-6 09:25:10
10#
Derrick.Jiao 发表于 2021-7-6 09:14
我这边用14的授权测试了一下没有问题,推测就是您的授权问题,每个版本对应的授权都不一样,v14版本需要 ...

好的,我问下版本。谢谢了
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部