CommonJS 要求与 ES6 导入差异
CommonJS require vs. ES6 import discrepancy
所以,我是 React 的新手。抱歉,如果我遗漏了一些明显的东西,我正在努力解决我的 ES6 导入的一个奇怪问题。
我正在使用 @typeform/embed
模块 (0.12.1),它奇怪地链接到 npm 上的 GitHub 存储库,但该存储库不存在。所以我没能调查潜在的相关问题。
无论如何,每当我执行以下操作时:
import typeformEmbed from '@typeform/embed'
我的文本编辑器显示 typeformEmbed
的类型是字符串,当我去调用它的函数时,它总是 undefined
。给我 'ole cannot invoke 属性 X on undefined TypeError。看起来好像它正在尝试导入 README
?
但是,然后我打开了我的 Node REPL 并且可以写:
const typeformEmbed = require('@typeform/embed')
它就像一个魅力。
我遗漏的两者之间是否存在差异?
编辑: 我知道这个问题的文字量很大,如果我遗漏了重要信息,请告诉我。我应该提到我用 create-react-app
.
构建了这个项目
import * as typeformEmbed from '@typeform/embed';
const popUpHandler = () => {
typeformEmbed.makePopup(
'https://admin.typeform.com/to/PlBzgL',
{
mode: 'drawer_left',
autoOpen: true,
autoClose: 3,
hideScrollbars: true,
onSubmit: function () {
console.log('Typeform successfully submitted')
}
}
)}
应该适合你
所以,我是 React 的新手。抱歉,如果我遗漏了一些明显的东西,我正在努力解决我的 ES6 导入的一个奇怪问题。
我正在使用 @typeform/embed
模块 (0.12.1),它奇怪地链接到 npm 上的 GitHub 存储库,但该存储库不存在。所以我没能调查潜在的相关问题。
无论如何,每当我执行以下操作时:
import typeformEmbed from '@typeform/embed'
我的文本编辑器显示 typeformEmbed
的类型是字符串,当我去调用它的函数时,它总是 undefined
。给我 'ole cannot invoke 属性 X on undefined TypeError。看起来好像它正在尝试导入 README
?
但是,然后我打开了我的 Node REPL 并且可以写:
const typeformEmbed = require('@typeform/embed')
它就像一个魅力。
我遗漏的两者之间是否存在差异?
编辑: 我知道这个问题的文字量很大,如果我遗漏了重要信息,请告诉我。我应该提到我用 create-react-app
.
import * as typeformEmbed from '@typeform/embed';
const popUpHandler = () => {
typeformEmbed.makePopup(
'https://admin.typeform.com/to/PlBzgL',
{
mode: 'drawer_left',
autoOpen: true,
autoClose: 3,
hideScrollbars: true,
onSubmit: function () {
console.log('Typeform successfully submitted')
}
}
)}
应该适合你