Unable to find nonexistent names when running `vite npm run dev`

Running npm dev is not showing any errors for missing names.

To replicate the issue, follow these steps:

  1. Create a React/TypeScript application named "foobar" by running:

    $ npm create vite@latest Need to install the following packages: [email protected] Ok to proceed? (y) y ✔ Project name: … foobar ✔ Select a framework: › React ✔ Select a variant: › TypeScript

  2. Navigate into the project directory and install packages

cd foobar && npm i

  1. Edit the file src/main.tsx and add a non-existent function call:

    import { StrictMode } from 'react'
    import { createRoot } from 'react-dom/client'
    import App from './App.tsx'
    import './index.css'
    
    does_not_exist();
    
    createRoot(document.getElementById('root')!).render(
      <StrictMode>
        <App />
      </StrictMode>,
    )
    

Outcome: npm run dev does not flag the missing does_not_exist function. However, npm run build catches it. I prefer using npm run dev during development as it recompiles on file changes.

Answer №1

I incorporated the vite-plugin-checker into my project:

npm install --save-dev vite-plugin-checker

After making adjustments to my vite.config.ts:

import react from '@vitejs/plugin-react'
import checker from 'vite-plugin-checker';

export default defineConfig({
  plugins: [
    react(),
    checker({
      typescript: true
    })
  ],
  ...

Now, with these changes, errors are caught in real-time and the code automatically recompiles upon saving.

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

What steps are required to customize a pre-existing DevExtreme JQuery DataGrid that was initially built in a cshtml file using Typescript?

I'm currently developing a web application using DevExtreme JQuery. Within the frontend, I have set up a DataGrid in a cshtml file. With DevExtreme functionality, it's possible to include an Add Button to the DataGrid that triggers a popup for in ...

"Encountering issues when trying to retrieve a global variable in TypeScript

Currently facing an issue with my code. I declared the markers variable inside a class to make it global and accessible throughout the class. However, I am able to access markers inside initMap but encountering difficulties accessing it within the function ...

Send an API request using an Angular interceptor before making another call

Within my application, there are multiple forms that generate JSON objects with varying structures, including nested objects and arrays at different levels. These forms also support file uploads, storing URLs for downloading, names, and other information w ...

Retrieving a specific data point from the web address

What is the most efficient way to retrieve values from the window.location.href? For instance, consider this sample URL: http://localhost:3000/brand/1/brandCategory/3. The structure of the route remains consistent, with only the numbers varying based on u ...

Exploring the method of including a mat-chip-list within a form

Can't submit form with mat-chip-list elements, even though they are present. How to send the tag array? Please assist! View my form here Here is the code I have so far: <mat-form-field class="example-chip-list"> <mat-chip-list #c ...

Steps to dynamically include a marker on a Google Maps component using HTTPGET in Angular 6

I am currently working on an Angular 6 application that involves integrating the Google Javascript API with AGM. So far, the map functions well except for dynamically adding markers using an http get request. Here is a snippet of the component.html: < ...

Is it possible for one component to access the viewmodel of another component that is not related?

I am working with Typescript, React, and Material-UI. I'm using plain React without Redux or Flux. My goal is to scroll to the TabsComponent and select a specific tab when a button in the ButtonComponent is clicked. These components are not directly ...

Effortlessly converting JSON data into TypeScript objects with the help of React-Query and Axios

My server is sending JSON data that looks like this: {"id" : 1, "text_data": "example data"} I am attempting to convert this JSON data into a TypeScript object as shown below: export interface IncomingData { id: number; t ...

Getting a list of the stack resources available in cloudformation using TypeScript

My team is developing an application that will deploy multiple stacks to AWS. One of these stacks is called SuperStar, and it can only exist once per AWS account. I am currently exploring how our TypeScript CDK can retrieve a list of stacks from CloudFor ...

Navigate to the next input on the p-table when entering a value

In my component, I have a p-table with input fields. I want to achieve the functionality where, after filling in the input and sending the data to the database via REST, pressing 'tab' will shift the focus to the next input field similar to Excel ...

Creating offspring within offspring

I am currently facing a problem that I believe should be easy to solve. The issue revolves around rendering a component on a particular page. I have set a layout for all child components under the dashboard, but I am uncertain if another layout is needed f ...

Angular 5: Unable to add a destroyed View to a ViewContainer

I encountered a new error in my Angular application that I haven't seen before. The issue is arising from this specific line in the Angular source code. This error occurs when I log out and then log back into my app. While on a certain route, there i ...

Arranging information within the Ngb-Accordion

Welcome to the code snippet showcasing how to create an accordion in Angular: <ngb-accordion [closeOthers]="false" activeIds="0"> <ng-container class="card" *ngFor="let post of Posts"> <ngb-panel title="{{post.title}} - ...

Efficiently eliminating one array from another in JavaScript with just a single line of code

In my angular application, I have two arrays - products and productsGreen. The products array contains all products, while the productsGreen array only has successful products. When the user deselects the green checkbox, I want to remove productsGreen fro ...

Encountering an error while attempting to adjust the window height on a react.js app

I am encountering a runtime error when using useState to obtain the window height. The error message indicates that the window is not defined. Can you provide insights into why this might be happening? Below is the code in question: let [winHeight, setWin ...

Unable to remove loading.tsx file

Currently tackling a project using Next.js, I decided to include loading.tsx within the app directory. However, upon attempting to delete it, an error crops up: Caused by: The system cannot find the file specified. (os error 2) The import trace for the r ...

What is the best method for combining multiple arrays of objects without any duplicate elements?

I have been trying to solve this issue, but all the solutions I found assume that you know the number of arrays you want to merge without duplicates. My task is to iterate over an object containing multiple arrays. Each array holds objects structured as f ...

Utilizing TypeScript to import and export modules under a single namespace

Have a look at this query that's quite similar to mine: https://github.com/Microsoft/TypeScript/issues/4529 Consider the following code snippet: //exported imports export {ISumanOpts, IGlobalSumanObj} from 'suman-types/dts/global'; export ...

Is it possible in TypeScript to change a string literal type into a number type?

Would it be feasible to develop a utility type Number<T> that can take a string literal type and convert it into a number? If conversion is not possible, should the utility return a never type? type Five = Number<'5'> // `Five` is con ...

Does ESLint have a rule that prohibits the use of hardcoded color values in styled-components?

Assistance is needed to address a specific issue we are facing. We want to ensure that our developers stick to the designated colors in our project. Is there a method to validate the usage of hardcoded strings like #FFFFFF, rgb(255,255,255), rgba(255,255 ...