我可以在带有ES6(V8)的库中的Google Apps脚本中使用定义的类吗?

罗尔特姆

我正在尝试使用库中定义的类,但结果仅收到错误。

[LibraryProject] /library/model/Update.gs

class Update {
  constructor(obj = {}) {
    if(typeof obj == "string"){
      options = JSON.parse(obj);
    }
    Object.assign(this, obj);
  }

  text(){
    return (this.message && this.message.text)?this.message.text:''
  }
}

任务

✅创建项目的新版本。(文件>管理版本...)

✅将此库加载到另一个项目中[别名:CustomService] (资源>库...)

✅使用CustomService的功能

❌使用CustomService的类

如果我尝试使用班级

[NormalProject] /index.gs

function test  (){
  Logger.log(CustomService.libraryFunction())
  var update = new CustomService.Update("");
  Logger.log(update)
}

TypeError:CustomService.Update不是构造函数(第3街,archivo“代码”)

如何实例化此类的对象?

如果我跑...

在图像中我们可以看到代码和错误

记录仪

我们可以看到两个日志,正确使用函数,尝试使用Class Constructir时出错

大师

如官方文档中所述,

库用户仅可使用脚本中的以下属性:

  • 不可计数的全局属性
    • 函数声明,
    • 使用var在函数外部创建的变量,以及
    • 在全局对象上显式设置的属性。

这意味着this库用户可以使用全局对象中的每个属性

在ES6之前,函数外部的所有声明(以及函数声明本身)都是此全局对象的属性。ES6之后,有两种全局记录:

  • 对象记录-与ES5相同。

    • 函数声明
    • 函数发生器
    • 变量分配
  • 声明性记录-新

    • 一切- ,letconstclass

声明记录中的那些虽然是全局变量,但无法从全局“对象”访问。因此,库用户无法访问库中的类声明。您可以简单地向类添加变量分配,以向全局对象(在任何函数之外添加属性

var Update = class Update{/*your code here*/}

参考文献:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

可以在Google Apps脚本中使用Google电子表格的“查询”功能吗?

来自分类Dev

可以在GAS(Google Apps脚本)中使用Bootstrap.js吗?

来自分类Dev

在Google Apps脚本中定义可在多个项目中使用的全局变量

来自分类Dev

Google Apps脚本-无法在App(电子表格等)中使用HTML服务“ createTemplateFromFile”吗?

来自分类Dev

Apps脚本-无法在html模板的js函数中使用google.script.run吗?

来自分类Dev

我可以在Google表格中创建一个函数并从网络应用程序Google Apps脚本中使用它吗?

来自分类Dev

我可以在自定义验证类中使用laravel验证规则吗?

来自分类Dev

如何在Swift脚本中使用其他文件中定义的类

来自分类Dev

使用HTML正文在Google Apps脚本中使用发送邮件

来自分类Dev

当我可以在es6中使用import / export时,angular的依赖项注入有什么优势

来自分类Dev

如果我在类成员函数的定义中使用全局变量,会违反封装吗?

来自分类Dev

我可以在ES6中使用JSNice吗?

来自分类Dev

我们可以在没有new关键字的情况下在ES6中使用Date对象吗?

来自分类Dev

我可以在同一React代码库中同时使用ES6和ES5吗?

来自分类Dev

我可以在.NET Standard类库中使用动态吗?

来自分类Dev

我可以在Google Apps脚本库中使用Class对象吗?

来自分类Dev

我们可以使用Google Apps脚本在Google Spreasheet中创建数据栏吗?

来自分类Dev

Google Apps脚本-回调webapp中使用的类方法

来自分类Dev

我可以向Google Apps脚本类添加自定义方法吗?

来自分类Dev

我可以在Google Apps脚本库中使用Class对象吗?

来自分类Dev

我可以在Google Apps脚本中使用HTML5网络工作者吗?

来自分类Dev

我可以在Google Apps脚本中隐藏日志消息吗?

来自分类Dev

使用HTML正文在Google Apps脚本中使用发送邮件

来自分类Dev

无法在Google Apps脚本中使用fetchURL()

来自分类Dev

我可以在javascript“类”的定义中使用setInterval吗?

来自分类Dev

在Google Apps脚本中使用Google字体

来自分类Dev

在Google Apps脚本中使用slices setoption

来自分类Dev

Google Apps脚本:在公式中使用Var?

来自分类Dev

可以在AbstractAction类中使用paintComponent()吗?

Related 相关文章

  1. 1

    可以在Google Apps脚本中使用Google电子表格的“查询”功能吗?

  2. 2

    可以在GAS(Google Apps脚本)中使用Bootstrap.js吗?

  3. 3

    在Google Apps脚本中定义可在多个项目中使用的全局变量

  4. 4

    Google Apps脚本-无法在App(电子表格等)中使用HTML服务“ createTemplateFromFile”吗?

  5. 5

    Apps脚本-无法在html模板的js函数中使用google.script.run吗?

  6. 6

    我可以在Google表格中创建一个函数并从网络应用程序Google Apps脚本中使用它吗?

  7. 7

    我可以在自定义验证类中使用laravel验证规则吗?

  8. 8

    如何在Swift脚本中使用其他文件中定义的类

  9. 9

    使用HTML正文在Google Apps脚本中使用发送邮件

  10. 10

    当我可以在es6中使用import / export时,angular的依赖项注入有什么优势

  11. 11

    如果我在类成员函数的定义中使用全局变量,会违反封装吗?

  12. 12

    我可以在ES6中使用JSNice吗?

  13. 13

    我们可以在没有new关键字的情况下在ES6中使用Date对象吗?

  14. 14

    我可以在同一React代码库中同时使用ES6和ES5吗?

  15. 15

    我可以在.NET Standard类库中使用动态吗?

  16. 16

    我可以在Google Apps脚本库中使用Class对象吗?

  17. 17

    我们可以使用Google Apps脚本在Google Spreasheet中创建数据栏吗?

  18. 18

    Google Apps脚本-回调webapp中使用的类方法

  19. 19

    我可以向Google Apps脚本类添加自定义方法吗?

  20. 20

    我可以在Google Apps脚本库中使用Class对象吗?

  21. 21

    我可以在Google Apps脚本中使用HTML5网络工作者吗?

  22. 22

    我可以在Google Apps脚本中隐藏日志消息吗?

  23. 23

    使用HTML正文在Google Apps脚本中使用发送邮件

  24. 24

    无法在Google Apps脚本中使用fetchURL()

  25. 25

    我可以在javascript“类”的定义中使用setInterval吗?

  26. 26

    在Google Apps脚本中使用Google字体

  27. 27

    在Google Apps脚本中使用slices setoption

  28. 28

    Google Apps脚本:在公式中使用Var?

  29. 29

    可以在AbstractAction类中使用paintComponent()吗?

热门标签

归档