为什么我的import语句在Deno中有语法错误,但是在Node.js中可以正常工作?

马丁·杜

我正在用两个VSCode设置进行测试;一个运行Deno,另一个运行Nodejs,使用Sucrase编译器转换代码,以便我可以编写本机ES6模块。我有一个非常简单的测试:一个小的Class和一个导入它的模块。这是Deno VSCode设置。

我的VSCode资源管理器面板如下所示。

    PLANNER-CODEBASE
        .vscode
            launch.json
            setting.txt
        src
            plannerFiles 
                ClassArrayList.js 
                main.js 
            log.ts 
            .gitignore
            .prettierrc 
            config.ts
            deps.ts
            index.ts
            makefile
            readMe.txt
            tsconfig.json

我使用这个launch.json条目运行代码。

    {
      "name": "Debug Program",
      "type": "node",
      "request": "launch",
      "cwd": "${workspaceFolder}",
      "runtimeExecutable": "deno",
      "runtimeArgs": ["run", "-A", "--unstable", "--inspect-brk", "./index.ts"],
      "port": 9229,
      "console": "integratedTerminal"
    },

这是index.ts

    import main from './src/plannerFiles/main.js'
    main()

这是main.js

    const main = () => {
      console.log('Starting your Planner App')
      
      import { ArrayList } from './ClassArrayList.js'
      let myArrayList = new ArrayList()
      
      let row0 = ['11/22/1968', '29', 'Revolution 9', 'Beatles', 'The Beatles [White Album]']
      let row1 = ['1960', '6', 'Fools Rush In', 'Frank Sinatra', "Nice 'N' Easy"]
      let row2 = ['11/11/1971', '1', 'One of These Days', 'Pink Floyd', 'Meddle']
      myArrayList.add(row0)
      myArrayList.add(row1)
      myArrayList.add(row2)
      myArrayList[5] = 'five'
      let xx = myArrayList.length
      let xxx = myArrayList.getUpperBound()
      let x = myArrayList.item(0)
      let y = myArrayList[1]
      let zzz = myArrayList[5]
      myArrayList.clear()
      myArrayList = ['LEVEL0INDENT', 50, 100, 75, 75, 100, 100, 100, 100] //first value is for initial space
      let z = myArrayList[1]
      
      debugger
      // static clear = (obj) => (obj.length = 0)
      // ArrayList.clear(myArrayList)
    }
    export default main

这是ClassArrayList.js

    class ArrayList extends Array {
      constructor() {
        super()
      }
      add = (obj) => {
        this.push(obj)
      }
      item = (key) => {
        let obj = this.valueOf()[key]
        return obj
      }
      getUpperBound = () => {
        return this.valueOf().length - 1
      }
      clear = () => {
        this.valueOf().length = 0
      }
    }
    export { ArrayList }

这是我的终端输出。

    ramData\chocolatey\bin\deno.exe run -A --unstable --inspect-brk ./index.ts
    Debugger listening on ws://127.0.0.1:9229/ws/fd15dc8c-111d-45e4-b09e-651aae5b01c7
    error: Expected LParen, got Some(LBrace) at file:///C:/Users/Bruce/Dropbox/Code/DENO%20BACKEND/Planner-Codebase/src/plannerFiles/main.js:4:9

我不知道怎么了或如何解决。任何帮助,将不胜感激。

Chellappan w

不是将模块导入功能内部,而是向外部移动。如果要延迟加载模块,请使用动态导入

尝试这个:

     import { ArrayList } from './ClassArrayList.js'
     const main = () => {
      console.log('Starting your Planner App');
      let myArrayList = new ArrayList();    
      let row0 = ['11/22/1968', '29', 'Revolution 9', 'Beatles', 'The Beatles [White Album]']
      let row1 = ['1960', '6', 'Fools Rush In', 'Frank Sinatra', "Nice 'N' Easy"]
      let row2 = ['11/11/1971', '1', 'One of These Days', 'Pink Floyd', 'Meddle']
      myArrayList.add(row0)
      myArrayList.add(row1)
      myArrayList.add(row2)
      myArrayList[5] = 'five'
      let xx = myArrayList.length
      let xxx = myArrayList.getUpperBound()
      let x = myArrayList.item(0)
      let y = myArrayList[1]
      let zzz = myArrayList[5]
      myArrayList.clear()
      myArrayList = ['LEVEL0INDENT', 50, 100, 75, 75, 100, 100, 100, 100] //first value is for initial space
      let z = myArrayList[1]
      
      debugger
      // static clear = (obj) => (obj.length = 0)
      // ArrayList.clear(myArrayList)
    }
    export default main

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我的脚本可以运行,但是在控制台中显示语法错误?

来自分类Dev

为什么XmlSerializer无法在.Net Core中序列化枚举值,但是在.NET Framework中可以正常工作

来自分类Dev

为什么%% timeit在Jupyter Notebook中可以正常工作,但是在Python Shell IDLE中抛出SyntaxError?

来自分类Dev

javascript“ this”关键字在浏览器中可以正常工作,但在node.js中却不能正常工作

来自分类Dev

我在netbeans中收到42000 sql语法错误,但是相同的查询字符串在mysql控制台中可以正常工作

来自分类Dev

我的查询在Laravel中无法正常工作,但在Sequel Pro中可以正常工作

来自分类Dev

我应该将js脚本文件放在mvc应用程序中的什么位置,以便jquery可以正常工作?

来自分类Dev

C ++中缺少return语句仍然可以正常工作

来自分类Dev

在C ++中缺少return语句仍然可以正常工作

来自分类Dev

为什么我在rpm脚本中出现“ [...] 2>>(tee -a $ logfile>&2)[...]”的语法错误,但是从命令行运行时却找不到语法错误,以及如何使其正常工作?

来自分类Dev

在Firefox中,图像未显示。但是在IE中,它可以正常工作

来自分类Dev

为什么我在python中收到SQL语法错误

来自分类Dev

为什么我在PHP中收到语法错误?

来自分类Dev

为什么接头在angular js中无法正常工作

来自分类Dev

为什么Three.js中的DirectionalLight无法正常工作?

来自分类Dev

403错误仅在Chrome中有效,在FF和IE中可以正常工作

来自分类Dev

OpenVPN可以连接,流量可以正常工作,但是我不在本地网络中

来自分类Dev

CREATE TABLE中的语法错误,没有任何表创建,但是在过程创建中

来自分类Dev

为什么tableview在iOS 6+模拟器上可以正常工作,但是在iOS 5模拟器中却崩溃

来自分类Dev

Haskell:为什么可以在ghci中加载此文件,但是当我在拥抱中尝试执行相同操作时,却出现语法错误?

来自分类Dev

为什么我的checkall函数可以工作,但是uncheckall函数不能正常工作

来自分类Dev

Lubuntu和Xubuntu中的屏幕崩溃都可以,但是在Windows Xp上可以正常工作

来自分类Dev

媒体查询在Node.js中无法正常工作

来自分类Dev

Node.js模块在不同设备中无法正常工作

来自分类Dev

For循环在Node.js中无法正常工作

来自分类Dev

Node.js中的HTTP请求无法正常工作?

来自分类Dev

for循环在Node.js中无法正常工作

来自分类Dev

在React中,为什么我不能使用嵌套的箭头函数...虽然正常的函数似乎可以正常工作?

来自分类Dev

Vue JS:功能删除在我的代码中无法正常工作

Related 相关文章

  1. 1

    为什么我的脚本可以运行,但是在控制台中显示语法错误?

  2. 2

    为什么XmlSerializer无法在.Net Core中序列化枚举值,但是在.NET Framework中可以正常工作

  3. 3

    为什么%% timeit在Jupyter Notebook中可以正常工作,但是在Python Shell IDLE中抛出SyntaxError?

  4. 4

    javascript“ this”关键字在浏览器中可以正常工作,但在node.js中却不能正常工作

  5. 5

    我在netbeans中收到42000 sql语法错误,但是相同的查询字符串在mysql控制台中可以正常工作

  6. 6

    我的查询在Laravel中无法正常工作,但在Sequel Pro中可以正常工作

  7. 7

    我应该将js脚本文件放在mvc应用程序中的什么位置,以便jquery可以正常工作?

  8. 8

    C ++中缺少return语句仍然可以正常工作

  9. 9

    在C ++中缺少return语句仍然可以正常工作

  10. 10

    为什么我在rpm脚本中出现“ [...] 2>>(tee -a $ logfile>&2)[...]”的语法错误,但是从命令行运行时却找不到语法错误,以及如何使其正常工作?

  11. 11

    在Firefox中,图像未显示。但是在IE中,它可以正常工作

  12. 12

    为什么我在python中收到SQL语法错误

  13. 13

    为什么我在PHP中收到语法错误?

  14. 14

    为什么接头在angular js中无法正常工作

  15. 15

    为什么Three.js中的DirectionalLight无法正常工作?

  16. 16

    403错误仅在Chrome中有效,在FF和IE中可以正常工作

  17. 17

    OpenVPN可以连接,流量可以正常工作,但是我不在本地网络中

  18. 18

    CREATE TABLE中的语法错误,没有任何表创建,但是在过程创建中

  19. 19

    为什么tableview在iOS 6+模拟器上可以正常工作,但是在iOS 5模拟器中却崩溃

  20. 20

    Haskell:为什么可以在ghci中加载此文件,但是当我在拥抱中尝试执行相同操作时,却出现语法错误?

  21. 21

    为什么我的checkall函数可以工作,但是uncheckall函数不能正常工作

  22. 22

    Lubuntu和Xubuntu中的屏幕崩溃都可以,但是在Windows Xp上可以正常工作

  23. 23

    媒体查询在Node.js中无法正常工作

  24. 24

    Node.js模块在不同设备中无法正常工作

  25. 25

    For循环在Node.js中无法正常工作

  26. 26

    Node.js中的HTTP请求无法正常工作?

  27. 27

    for循环在Node.js中无法正常工作

  28. 28

    在React中,为什么我不能使用嵌套的箭头函数...虽然正常的函数似乎可以正常工作?

  29. 29

    Vue JS:功能删除在我的代码中无法正常工作

热门标签

归档