javascript API导入和导出时遇到问题

问题描述 投票:0回答:1

我无法为题为“使用ES6和Dropbox构建费用管理器”的scrimba课程导入Dropbox依赖项。我想在自己的计算机上练习Dropbox API,但在将dropbox SDK与我的项目连接时遇到了麻烦。我已经安装了依赖项,但是我在终端控制台中陷入了此错误:

SyntaxError: The requested module 'dropbox' does not provide an export named 'Dropbox'

然后,我尝试了较旧的'require'方法,并得到了:

var Dropbox = require('dropbox').Dropbox;
              ^
ReferenceError: require is not defined 

我尝试过也没有使用require关键字:

import { Dropbox } from 'dropbox';
         ^^^^^^^
SyntaxError: The requested module 'dropbox' does not provide an export named 'Dropbox'
    at ModuleJob._instantiate (internal/modules/esm/module_job.js:92:21)
    at async ModuleJob.run (internal/modules/esm/module_job.js:107:20)
    at async Loader.import (internal/modules/esm/loader.js:167:24)

我的package.json看起来像这样:

{
  "name": "z-dropbox-file-organizer-scrimba",
  "version": "1.0.0",
  "description": "scrimba course",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "type": "module",
  "dependencies": {
    "dropbox": "^4.0.30",
    "es6-promise": "^4.2.8",
    "isomorphic-fetch": "^2.2.1"
  }
}

我有什么不负责的吗?谢谢您的帮助!

javascript api export dropbox-api
1个回答
0
投票

我解决了我的问题!我从先前添加自己的package.json文件中删除了"type": "module"(由于我用Google搜索的东西,我忘记了原因)。但是我想我不太了解什么是ESM。我知道'require'是旧方法,而'import'是新ES6方法。但是删除它可以使我的脚本在我的终端上运行!

© www.soinside.com 2019 - 2024. All rights reserved.