Ingap.dev - A Personal Dev Blog

I would spend 55 minutes defining the problem and then five minutes solving it. (Albert Einstein)

Published on Wednesday 4 October 2023

Tags: troubleshooting3

Uncaught SyntaxError: Identifier 'originalPrompt' has already been declared (at prompt.js:1:1)

Embark on a journey to unravel the mystery of the SyntaxError in prompt.js.


How to Fix the Annoying SyntaxError in prompt.js

In the world of coding, we often find ourselves in a labyrinth of errors and bugs. One such error that had me pulling my hair out was this:

Uncaught SyntaxError: Identifier 'originalPrompt' has already been declared (at prompt.js:1:1)

Have you ever been faced with this error message popping up in your browser console?

This error message appeared out of nowhere in my browser console, like a ghost haunting my code. I spent countless hours sifting through my Ionic Framework code, questioning every line, doubting my understanding of React and TypeScript. I was lost in the maze, searching for an exit that seemed non-existent.

But here's the plot twist: My code was innocent.

Solution

This error is caused by a conflict between the Selenium IDE browser plugin and the prompt() function in JavaScript. The plugin tries to override the prompt() function with its own version, but it fails to do so properly and ends up declaring the same variable twice.

All you need to do is disable the Selenium IDE plugin when you are not using it for testing. You can do this by clicking on the plugin icon in your browser toolbar and selecting "Disable". This will prevent the plugin from injecting its code into the web pages and causing the SyntaxError.