节点 - 将 jest 与 esm 包一起使用

2024-02-01

我想知道如何合并esm包裹https://www.npmjs.com/package/esm https://www.npmjs.com/package/esm在节点后端使用笑话。

我尝试设置一个安装文件require("esm") and require("esm")(module)在文件的最顶部,但它仍然给我SyntaxError: Unexpected token error.

我以前会用过node -r esm但笑话不支持这一点。


当你表演时require("esm")(module),将其视为您正在创建一个 esm-transformer 函数,该函数正在等待将文件转换为 ES 模块。

这是我对 Node v8+ 的尝试:

  • default jest配置

  • default esm配置

utils-1.js:

export const add = (a, b) => a + b;

utils-2.js:

export const multiAdd = array => array.reduce((sum, next) => sum + next, 0)

_测试_/utils-1.assert.js

import { add } from '../utils-1';

describe('add(a,b)', () => {
  it('should return the addtion of its two inputs', () => {
    expect(add(1,2)).toBe(3);
  });
});

_测试_/utils-2.assert.js

import { multiAdd } from '../utils-2';

describe('multiAdd(<Number[]>)', () => {
  it('should return a summation of all array elements', () => {
    expect(multiAdd([1,2,3,4])).toBe(10);
  })
});

_测试_/utils.test.js

const esmImport = require('esm')(module);
const utils_1 = esmImport('./utils-1.assert')
const utils_2 = esmImport('./utils-2.assert')

希望这可以帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

节点 - 将 jest 与 esm 包一起使用 的相关文章

随机推荐

  • 无法执行 JQuery-Mobile 可折叠展开/折叠事件

    我有以下演示 HTML 文件 我想使用 JQuery Mobile 可折叠展开 折叠事件 但无法触发 JavaScript 事件 我基于这里的 JSFiddle 示例 http jsfiddle net 6txWy http jsfiddl
  • 使用文件 I/O 正确创建和运行 win32 服务

    我基于此编写了一个非常简单的服务应用程序代码示例 http code msdn microsoft com windowsdesktop CppWindowsService cacf4948 作为正常运行的一部分 应用程序假定在它找到的目录
  • Dynamics CRM:创建具有特定 GUID 的用户

    出于集成目的 Dynamics CRM 中的用户需要具有与环境其他部分 基于 ASP NET 和 SQL Server 2005 构建的多个自定义 Web 应用程序 中相同的 GUID 但是 当我们尝试使用特定 GUID 创建新的 Dyna
  • 如何在 Go 正则表达式中获取捕获组功能

    我正在将一个库从 Ruby 移植到 Go 并且刚刚发现 Ruby 中的正则表达式与 Go 不兼容 google RE2 我注意到 Ruby 和 Java 以及其他语言使用 PCRE 正则表达式 perl 兼容 支持捕获组 所以我需要重写我的
  • 为什么我会收到意外的模板字符串表达式错误?

    是否可以使用地图数组数据 adv event title 里面一个react structured data JSX 我尝试添加反引号但没有成功 name adv event title 尝试1
  • 组合 Bigquery 删除和插入语句

    Bigquery 有没有办法结合DELETE and INSERT语句合二为一 DELETE my project my dataset demo WHERE date CURRENT DATE INSERT INTO my project
  • 使用 ScrollViewer.ScrollToEnd() 进行自动滚动仅在调试时有效,事件处理程序太简单

    看着这个解决方案 https stackoverflow com questions 2984803 how to automatically scroll scrollviewer only if the user did not cha
  • VS 2015 Update 1 - 声称我正在调试发布版本

    更新到 VS 2015 update 1 后 如果我运行一个 Web 项目 MVC 停止该应用程序 然后尝试再次运行它 VS 停止并弹出一个对话框 声称 您正在调试发布版本
  • JSON.stringify 不会对嵌套数组进行字符串化

    我目前正在调查为什么 JSON stringify 无法正确解析我的对象 这是我试图解析为 JSON 字符串的对象 var data name string active bool data value number date string
  • 什么是 doc2vec 训练迭代?

    我是 doc2vec 的新手 我最初试图理解 doc2vec 下面提到的是我使用 Gensim 的代码 正如我想要的那样 我得到了两个文档的训练模型和文档向量 但是 我想知道在几个时期重新训练模型的好处以及如何在 Gensim 中做到这一点
  • 自动合并 Github 上的拉取请求,没有合并气泡

    github 中的 此拉取请求可以自动合并 合并拉取请求 按钮非常棒 除了它会创建合并气泡 有没有办法在 github 中使用这个按钮 功能而不产生合并气泡 No The git blog https github com blog 843
  • SeriesCollection 和 FullSeriesCollection 之间的区别

    我正在尝试清理一些自动生成的代码 并且我对 Excel 中的系列功能相当陌生 所以在许多网站 论坛中我发现人们使用更多SeriesCollection而不是我生成的代码使用FullSeriesCollection 我的代码正在过滤一些内容
  • 没有 Docker 的 Gitlab-runner

    我已经在 ubuntu 16 04 上安装了 gitlab runner 我已经设置了 Executor shell 我的项目托管在 gitlab com 上 有一个非常简单的 yaml 配置文件 dev script pwd I am n
  • 从 Spring WS 拦截器获取请求参数

    我将 Jaxb 2 与 Spring WS 一起使用 并且我有一个针对特定有效负载的拦截器 并且它工作正常 这里我的要求是从拦截器的handleRequest方法中读取请求参数 我知道这应该是相当简单的 但是无法找到读取请求参数的方法 目前
  • fstream 文件结尾问题

    我正在读取多个文件 这些文件大约有 300 个 由于某种原因 如果我将循环设置为运行超过 3 次迭代 则应该迭代每一行的 while 循环将变得无限 我的问题是 我是否忘记在 while 循环中包含一些内容 现在我只是尝试一次读取一行 最终
  • Android + 字符串

    谁能告诉我 Android 中的 toString 是什么以及如何使用它 作为例子将受到高度赞赏 toString http download llnw oracle com javase 6 docs api java lang Obje
  • SQL 中的特殊字符转义

    Oracle 有没有一种简单的方法来转义 SQL 语句中的特殊字符 即 我看到了这个link http orafaq com faq how does one escape special characters when writing s
  • php://输入返回空

    我有骨干应用程序 当模型更新时 PUT 请求会发送到我的服务器 客户端看起来不错 但在服务器端 PHP 我遇到了一些麻烦 当我第一次在 PHPStorm 中测试这个请求时 file get contents php input 返回我所期望
  • 使用 jQuery 确定相对路径

    我在顶级域下的子文件夹中安装了几个 WordPress 站点 http www mydomain com site a http www mydomain com site a http www mydomain com site b ht
  • 节点 - 将 jest 与 esm 包一起使用

    我想知道如何合并esm包裹https www npmjs com package esm https www npmjs com package esm在节点后端使用笑话 我尝试设置一个安装文件require esm and require