Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disallow template literal placeholder syntax in regular strings (no-template-curly-in-string) #594

Closed
feross opened this issue Aug 19, 2016 · 3 comments

Comments

@feross
Copy link
Member

feross commented Aug 19, 2016

ECMAScript 6 allows programmers to create strings containing variable or expressions using template literals, instead of string concatenation, by writing expressions like ${variable} between two backtick quotes (). It can be easy to use the wrong quotes when wanting to use template literals, by writing "${variable}", and end up with the literal value "${variable}"` instead of a string containing the value of the injected expressions.

This rule aims to warn when a regular string contains what looks like a template literal placeholder. It will warn when it finds a string containing the template literal place holder (${something}) that uses either " or ' for the quotes.

http://eslint.org/docs/rules/no-template-curly-in-string

Likely to be uncontroversial and only one test repo fails so I will merge this into standard v8 beta.

@tunnckoCore
Copy link

tunnckoCore commented Aug 24, 2016

I don't see fit for this restriction. There may not be failing repos, but that's not the case. It's pretty logical to have some template engine working with that to emulate it intentionally.

It's not my case, it's not a problem for me, just wanted to mention it.

edit: This one for example https://github.com/tunnckoCore/es6-template (and it's not the only one, i'm sure) - I don't use it, but it would be a problem for someone.

@feross
Copy link
Member Author

feross commented Aug 25, 2016

@tunnckoCore You can instruct users of polyfills like that one to just add this to the top of their file:

/* eslint-disable no-template-curly-in-string */

@tunnckoCore
Copy link

Huh, actually, yea. Thanks.

@lock lock bot locked as resolved and limited conversation to collaborators May 10, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
Archived in project
Development

No branches or pull requests

2 participants