typescript - deptno/deptno.github.io GitHub Wiki
node μ€νμμ sourcemap μ νμ±ν ν΄μ νμ μ€ν¬λ¦½νΈ μ½λλ‘ νμΈμ΄ κ°λ₯νλλ‘νλ€
tsc --sourceMap=true
node --enable-source-maps [source.js]vitest ν μ€νΈ μ€μ ts μ λΉλλ js κ° ν¨κ» μλ κ²½μ° js λ₯Ό λ¨Όμ μ½λκ²½μ°κ° μμ΄μ build λ νμΌ μ κ±° ν ν μ€νΈκ° νμνλ€.
tsc --build --cleanvoid λ 곡νν κ°μΌλ‘ μ·¨κΈλλ€. μ¦ κ°μ΄ μλ€. λ¬΄μ¨ κ°μΈμ§λ λͺ¨λ₯΄κ² μΌλ μλ―Έ μλ 무μΈκ°λ₯Ό 리ν΄νλ©° μ΄λ unknown κ³Ό λΉμ·ν μ±μ§μ κ°μ§λ€.
undefined λ undefined λ‘ μ·¨κΈλλ€
const f1 = () => undefined {
return console.log()
}-
undefinedλundefinedνμ μ κ°μ§λ€ - console.log μ λ°ν κ°μ
undefinedμ΄μ§λ§ νμ μvoidμ κ°μ§κΈ° λλ¬Έμ νμ μλ¬κ° λ°μνλ€ -
unknownνμ κ³Ό λΉμ·νμ§λ§ λ€λ§ λͺ μμ μΌλ‘ μλ―Έκ° μλ κ°μ νμ μ λλ‘ μ΄ν΄νλ€
/app/.pnp.cjs:10322
return Object.defineProperties(new Error(message), {
^
Error: Qualified path resolution failed: we looked for the following paths, but none could be accessed.
Source path: /app/packages/lib/src/delay
Not found: /app/packages/lib/src/delay
at makeError (/app/.pnp.cjs:10322:34)
at resolveUnqualified (/app/.pnp.cjs:11847:13)
at resolveRequest (/app/.pnp.cjs:11888:14)
at Object.resolveRequest (/app/.pnp.cjs:11944:26)
at resolve$1 (file:///app/.pnp.loader.mjs:1991:25)
at nextResolve (node:internal/modules/esm/loader:163:28)
at ESMLoader.resolve (node:internal/modules/esm/loader:838:30)
at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)
at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:77:40)
at link (node:internal/modules/esm/module_job:76:36)delay.js κ° μλ delay λ₯Ό λͺ»μ°Ύκ² λ€κ³ λμ€λ μλ¬ μ»΄νμΌ κ²°κ³Όκ° κ·Έλ¬ν κ²μΈλ° λκ°μ§ μκ°μ΄ λ¬λλ° μΌλ¨ λλ λ°©ν₯μΌλ‘ μ²λ¦¬
-
module λ‘ μ»΄νμΌ λμμΌλ
.mjsλ₯Ό μ°Ύλ κ²μ΄ μλμ§ ν΄μ νμΌ λͺ μ λ³κ²½ν΄λ³Έλ€. -
importꡬ문 μ체μ.jsνμ₯μλ₯Ό λΆμ¬μ μν¬νΈνλ€ -
TODO: μκ°ν΄λ³΄λ
module컨νΌκ·Έκ° μΌμ§λ©΄ directory import λ₯Όνκ³ κ·Έ μμμindex.jsμν¬νΈνλ ꡬ쑰μΈκ° μΆκΈ°λ μΌλ¨ νμλ‘ ν΄κ²° -
module: es2022
import { a } from './module'- expected
import { a } from './module.js'- actual
import { a } from './module'- solution
import { a } from './module.js'