node.js - Jest ne rješava ESM lokalne uvoze

Imam TypeScript projekt s dvije datoteke, a.ts i b.ts. Uvozim potonju u a.ts ovako

import * from "./b.js"

Ovo radi u redu. Typescript razumije. Međutim, prilikom pokretanja Jesta (koristeći ts-jest), dobivam

Cannot find module './b.js' from '

Čitaj više →

typescript - esModuleInterop: true, ali TSLint javlja grešku: "može se uvesti samo kao zadani uvoz koristeći zastavicu 'esModuleInterop'"

Nisam siguran zašto dobivam pogrešku naslova na oba zadana uvoza u nastavku:

// ./src/classes/FirestoreConnection.ts import admin, {firestore} from "firebase-admin"; import firebase from "firebase"; // TS1259: Module '"/home/owner/PhpstormProjec

Čitaj više →

reactjs - Zašto je moj modul prazan {} kada pokrećem Jest i uvozim ESM modul?

Uvozim zadani import iz paketa node_module koji izvozi ESM modul. Postavio sam svoj Jest/Babel tako da je prestao prijavljivati SyntaxError: Unexpected token import, ali sada kad modul uspješno uvozim, ispostavilo se da je modul prazan objekt. Trebam li nekako transformirati svoj kod? (P.S. Vjerojatno je suvišno reći, ali import u mojoj aplikaciji funkcionira bez problema.) (P.P.S. Koristim Create React App i TypeScript, u slučaju da to ima razlike.)

jest.config.js

Čitaj više →

node.js - Kako natjerati @babel/register da transpilira ESM uvoze?

Koristim sljedeće za transpajliranje TypeScript datoteka u runtimeu.

import babelRegister from "@babel/register" babelRegister({ presets: [ "@babel/preset-env", "@babel/preset-react", "@babel/preset-typescript", ], extensions: [".tsx"], cache: false, })

Sve je funkcioniralo dobro dok nisam pokušao migrirati kodnu bazu s CommonJS na ESM.

Prema Sindreu Sorhusu, potrebno je zamijeniti

Čitaj više →

node.js - Uvoz CommonJS modula u Typescript projekt koji izvozi ESModule

Pravim NodeJs biblioteku u Typescriptu i planiram da podržava Node@14+. Dakle, odlučio sam bazirati ovaj projekt kao ESModule umjesto CommonJs. Sada su potrebne neke biblioteke koje su CommonJs i instaliram njihove @types. Uvozi mog typescript fajla izgledaju ovako:

import { Command } from 'commander'; import inquirer from 'inquirer'; import { resolve } from 'path'; import { render } from 'mustache'; import { copySync, readdirSync, readFile, readFileSync, writeFile

Čitaj više →

typescript - Uklanjanje --always-strict iz 'tsconfig.json' u ESM modulu

ESM & "use strict"


Od objave sljedećih tsconfig.json zastavica...

  • $ tsc --module "Node16"
  • $ tsc --moduleResolution "Node16"

...Pišem samo ES6-standardizirane JavaScript module, u "TypeScript". Razumijem da dodavanje "use

Čitaj više →

node.js - Uvoz modula iz korijena projekta (Node 18 + TS + ESM)

Pokušavam uvesti modul iz glavnog direktorija mog Node projekta umjesto da koristim relativnu putanju. Koristim Node 18, ESM, Typescript i pokrećem ga s ts-node-esm.

Kod :

// import { number } from './check.js' // works import { number } from 'check.js' // does not work console.log(number)

Greška :

~/Code/ts-esm (main)*$ yarn dev yarn run v1.22.19 ts-node-esm src/start.ts /home/rjurado/Code/ts-esm/

Čitaj više →

javascript - Postoji li ikakva korist od prelaska na ESM ako već koristim TypeScript u svojoj Node.js usluzi

Moj trenutačni slučaj upotrebe je da koristim node-fetch u svojoj usluzi, a nedavna verzija node-fetch (3.x) je čisti ESM modul, što znači da ću biti ograničen na v2.x i neću moći ažurirati na noviju verziju.

Moje opcije su ili da pretvorim svoju uslugu iz CJS u ESM ili da pređem na neki drugi HTTP klijent poput axiosa. Obje opcije zahtijevaju puno truda i pokušavam vidjeti koja opcija ima više smisla.

Pa moje pitanje je postoji li ikakva korist od prelas

Čitaj više →

Migrirajte webpack react-typescript projekt na ESM module

Imam Typescript projekt baziran na nodejs, React i paketiran s Webpack5 kodna baza ima server module (.ts), klijentske module (.ts, .tsx) i zajedničke module (.ts) Do sada nisam imao problema s izgradnjom Počeo sam migrirati kodnu bazu na esm module primijenio sam ispravke u package.json i tsconfig.json da podrže i generiraju esm promijenio sam sva imena datoteka iz *.ts u *.mts, a *.tsx sam ostavio

Čitaj više →

javascript - Kako popraviti require() ES modula /dir/node_modules/@angular/core/fesm2015/core.mjs nije podržano

Na VsCodeu uključio sam Quokka.js ekstenziju. Pokušao sam je pokrenuti na TypeScript datoteci i dobio sljedeću pogrešku:

require() of ES Module /project/node_modules/@angular/core/fesm2015/core.mjs not supported.  Instead change the require of /project/node_modules/@angular/core/fesm2015/core.mjs to a dynamic import() which is available in all CommonJS modules.  ​​​​​at ​​​​​​​​Object.<anonymous>​​​ ​libs/features/orders/src/lib/components/order-list.component.ts:1

Čitaj više →