cyrf
cyrf

Reputation: 6023

string templates are not supported by current javascript version

I am trying to use ES6 String Templates in a Node.js (v 5.7.0) app, but they are not working. Webstorm is correctly warning me that

String templates are not supported by current Javascript version

I am sure I have used string templates in a node app in the past. How can I get string templates to work? I am running the server with this command

npm start

When that is fixed, how can I help Webstorm know it is fixed and stop showing the warning?

Edit: I changed the app source to use template strings in this manner:

`````

var app = express();
var server = app.listen(process.env.PORT || 8080, function () {
    var host = server.address().address;
    var port = server.address().port;
    console.log(`App listening at http://${host}:${port}`);

`````

the app prints:

App listening at http://:::8080

Upvotes: 22

Views: 15548

Answers (2)

Shadi Alnamrouti
Shadi Alnamrouti

Reputation: 13268

String templates are supported in JavaScript version ECMAScript 6 and above.

To fix this in Web Storm:

Webstorm IDE

-> File

-> Settings

-> Languages & Frameworks

-> JavaScript

-> Javascript Language Version:

Choose ECMAScript 6 instead of ECMAScript 5.1 or any older version.

Upvotes: 20

Cohars
Cohars

Reputation: 4022

Have you try in the REPL? It works for me.

enter image description here

If the code doesn't throw an error it means that the template strings works. But if the result is not what you expected, just console.log your variables to see what's inside.

Edit: Concerning the WebStorm warning, it seems pretty easy to fix.

Upvotes: 17

Related Questions