[英]Trouble with javascript API imports and exports
我在為名為“使用 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"
}
}
有什么我沒有考慮的嗎? 感謝您的任何幫助!
我解決了我的問題! 我從我之前添加自己的 package.json 文件中刪除了"type": "module"
(因為我用谷歌搜索過,我忘了為什么)。 但我想我不太明白 ESM 是什么。 我知道'require'是舊方式,'import'是新的ES6方式。 但是刪除它允許我的腳本在我的終端中運行!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.