타입스크립트 declared but its value is never read 무시하기

해당 메시지가 뜨면서 컴파일이 안되는 경우가 있음.

  • noUnusedParameters: false 설정
  • @ts-nocheck 사용
  • 사용하지 않는 변수에 _붙이기
  • void 연산자 사용하기
  • ts-ignore 사용하기

아래와 같은 코드가 있다. 아래 코드는 현재 build를 하면 mode 변수를 사용하지 않아서 컴파일 오류가 발생함

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";

// https://vite.dev/config/
export default defineConfig(({ mode }) => ({
  plugins: [react()],
  server: {
    port: 7173,
    proxy: {
      "/coinGecko": {
        target: "https://api.coingecko.com",
        changeOrigin: true,
        rewrite: path => path.replace("/coinGecko", ""),
      },
    },
  },
  resolve: {
    alias: [{ find: "@", replacement: "/src" }],
  },
  esbuild: {
    // drop: mode === "production" ? ["console"] : [],
  },
  build: {
    rollupOptions: {
      external: [/^backup/],
    },
  },
}));

tsconfig.json > noUnusedParameters값 false 설정

{
  "compilerOptions": {
    생략,
    "noUnusedParameters": true,
  },
  "include": [
    "vite.config.ts"
  ],
}

// @ts-nocheck 사용하기

// @ts-nocheck
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";

// https://vite.dev/config/
export default defineConfig(({ mode }) => ({
  생략,
  esbuild: {
    // drop: mode === "production" ? ["console"] : [],
  },
  build: {
    rollupOptions: {
      external: [/^backup/],
    },
  },
}));

사용하지 않는 변수에 _붙이기

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";

// https://vite.dev/config/
export default defineConfig(({ mode: _mode }) => ({
  생략,
  esbuild: {
    // drop: mode === "production" ? ["console"] : [],
  },
  build: {
    rollupOptions: {
      external: [/^backup/],
    },
  },
}));

void 연산자 사용하기

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";

// https://vite.dev/config/
export default defineConfig(({ mode }) => {
  void mode; // mode를 읽는 것으로 처리하여 경고 방지
  return {
    생략,
    esbuild: {
      // drop: mode === "production" ? ["console"] : [],
    },
    build: {
      rollupOptions: {
        external: [/^backup/],
      },
    },
  };
});

// @ts-ignore 사용하기 ts-ignore의 경우 사용하지 않는 변수 윗 줄에 사용하면 적용됨

import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";

// https://vite.dev/config/
// @ts-ignore
export default defineConfig(({ mode }) => {
  return {
    생략,
    esbuild: {
      // drop: mode === "production" ? ["console"] : [],
    },
    build: {
      rollupOptions: {
        external: [/^backup/],
      },
    },
  };
});

Leave a Comment