问题标签 [javascript-import]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
28 浏览

javascript - javascript中的通配符导入......它是否在引擎盖下使用`with`工作?

所以我知道可以用require.

import {x} from 'x'相当于const {x} = require('x')

但是呢import * from 'x'?我能想象它被翻译成的唯一的东西是with(require('x')){... }

然而,with声明是不受欢迎的,不是吗?(因为您在编译时不知道如何解析引用)

0 投票
1 回答
39 浏览

javascript - 尝试导入库时出错

尝试导入库时出现此错误。

错误

我通过命令得到了这个库:npm i queue

代码我如何导入(javascript):

import Queue from "./node_modules/queue/index.js"

HTML:<script type="module" src="./gamescript.js"></script>

我该如何解决这个问题?

0 投票
0 回答
170 浏览

javascript - 如何将 ESmodule 导入与 hardhat(使用 CommonJS)一起使用?

安全帽测试教程用于require导入,而不是import.

该站点将 CommonJS 使用require和 ESModule 描述为使用import.

我有一些使用ESModule样式(导出和导入)的代码,我不能轻易地在 Hardhat 代码中使用它。

如何在安全帽中使用 ESModule 样式的代码?

跑步时npx hardhat test

  • 如果我在安全帽代码中使用 ESModule 样式import,我会收到您期望的错误:
  • 如果我require在安全帽代码中使用,我会收到您对 ESModule 样式的抱怨export

编辑可能是相关的,仍在阅读。

0 投票
0 回答
55 浏览

javascript - 如何将 Babel 与安全帽一起使用?

当我在 Hardhat 中运行测试时,我得到了这个问题中提到的错误。

在 Hardhat 文档中,他们建议可以使用@babel/register,它应该可以即时编译 javascript。

当我添加@babel/register并包含require("@babel/register");在测试文件中时,该测试文件不再抱怨,但现在 Hardhat 内部的一些东西抱怨。

如何使用 Babel 和 Hardhat 正确编译 ESModuleimport以用于使用 CommonJS 的 Hardhat 测试require

0 投票
0 回答
65 浏览

javascript - 如何在 React 中调试 javascript 函数的导入?

我在 javascript 文件 (helpers.js) 中有一些函数,这些函数被导入到反应文件 (caller.jsx) 中。

helpers.js:

来电者.jsx:

当我运行本地 React 服务器 ( npm run start) 时,一切正常。我可以使用该应用程序并且它可以工作。

当我运行生产构建 ( npm run build) 并从该构建中提供 javascript 时,它不起作用,并且控制台中出现错误消息:

浏览器中的编译代码在等号 (=) 处显示了 helpers.js 导出处的问题:

我也尝试在 caller.jsx 中导入符号:

在这种情况下,生产版本会抱怨符号未导出。

如果我删除两个,那么它会抱怨一个。

似乎 CommonJS 样式的代码(带有 module.exports)在 ESModule 样式的代码(带有 import)中不起作用。

但是,我还有一些其他文件(称它们为 caller2.jsx 和 helper2.js),它可以供 helper2.js 使用module.export,而 caller2.jsx 可以使用 import 语句。

我对如何分辨发生了什么感到困惑。

它被出口了,该死的!为什么只有生产编译器说不是?

版本:节点 v16.10.0、npm 7.24.0、react 17.0.2、react-scripts 4.0.3。

编辑:一些构建信息:我们使用npm. 以下是 package.json 中的脚本:

例如,这里是完整的输出build

编辑 2:我们使用的是安全帽,所以我们不能使用 ESModule 导出。例如,请参阅此 github 问题此 stackoverflow 问题

0 投票
1 回答
34 浏览

javascript - 如何使用标签 API?

我正在创建一个程序,该程序需要与打开 HTML 文件的窗口上的其他选项卡进行交互,我找到了这段代码。但是,我认为我没有正确实施它,因为它什么也没做。这是我的(不完整的)代码:

HTML:

JavaScript:

任何帮助,将不胜感激!:)

就上下文而言,这是针对我的学校的。它本质上需要是一个文本编辑器,然后自动将文本上传到我学校使用的平台。

0 投票
1 回答
101 浏览

reactjs - 为什么我不能将 React 导入为“react”?

这里也描述了问题,但响应不是详尽的React can't be found

import React from 'react'<- 我知道这个说法是正确的

由于“React”是默认导出而不是命名导出,因此该语句不应该也起作用:

import react from 'react'

我知道 React.createElement() 将来会被调用,但为什么 react.createElement() 不正确?毕竟,“React”这个词只是指代“react”模块的名称。

0 投票
0 回答
40 浏览

javascript - 使用新 URL 使用 Vite 提供开发中的静态图像

我目前有一个带有 Vite 2.7.1 的 React 应用程序。我在开发过程中无法在 Vite 中显示静态本地图像。这在生产中有效

我在用着:

我试过了:

然后我会像这样消费它:

我不知道这是否是文件服务器问题,但它确实正确映射了地址! 在此处输入图像描述 在此处输入图像描述

这是我的 vite.config.ts 文件:

笔记。Vite 当前配置为使用 NX CLI 提供的 monorepo 方式。

0 投票
1 回答
21 浏览

javascript - 导出/导入同名类型和值

我正在尝试在typescript svelte 3 应用程序中使用big.jstoFormat 。正如 GitHub 页面上所解释的,我已经安装了来自definitelyTyped 项目的类型:

但是,toFormat 没有类型定义;所以我写了自己的:

现在我可以像下面那样使用 big.js 和 toFormat (有效):

但是,我不想每次使用时都执行 toFormat,而是希望使用以下更简单的语法:

为此,我创建了 /utilities/decimal.ts 文件:

现在的问题是import Decimal from '../utilities/decimal';确实导入了 DecimalConstructor,但没有导入 Decimal 接口。我看到import Big from 'big.js';导入了 Big 接口和 BigConstructor;所以似乎可以将我的 Decimal 接口和 DecimalConstructor 放在同一个Decimal名称下。有人可以帮我弄这个吗?

更新:顺便说一句,以下工作:

我想要实现的是以与默认导入相同的名称导入 Decimal 和 DecimalConstructor 。

0 投票
1 回答
41 浏览

javascript - Eslint:手动控制绝对和相对导入

我想要一个 eslint 规则,它将为从目录内部导入的所有内容设置相对导入路径,为从目录外部导入的所有内容设置绝对路径。

示例:这是我的文件结构

我想在我的主目录中进行相对导入,对从目录外部导入的所有内容进行绝对导入。

我的 Component2.tsx 的导入应该是这样的