5

我最近注意到 V8 引擎的一种奇怪行为。当继承在一个单独的文件中找到的类时,引擎无法识别基类,例如以下配置失败:

BaseFoo.ts

export class BaseFoo {}

SpecialFoot.ts

import { BaseFoo } from "./BaseFoo";

class SpecialFoo extends BaseFoo {}

有一个错误:

ReferenceError:未定义 BaseFoo [行:1,函数:,文件:SpecialFoo]

如果这两个类放在同一个文件中,它就可以工作。

我正在使用 Visual Studio Code,它批准了这个配置(意味着没有拼写错误)。

有任何想法吗?

4

2 回答 2

2

如他们的V8 运行时页面所述:

警告:尚不支持 ES6 模块。

这意味着 Google Apps 脚本不处理文件的导出和导入。这有点奇怪,因为所有文件都在全局范围内(并且按照文件列出的顺序),因此您可以引用其他文件中的类。

于 2020-06-23T00:09:41.460 回答
0

正如 Sunny Patel 所提到的,V8 运行时不支持模块。但是,您可能会查看Clasp及其部分支持模块的TypeScript 功能。

相关链接:

于 2020-12-07T05:19:54.520 回答