Skip to content
← Back to rules

eslint/no-template-curly-in-string 风格

它的作用

禁止在普通字符串中使用模板字面量占位符语法。此规则确保 ${variable} 这类表达式仅在模板字面量中使用,避免在普通字符串中错误地使用。

为什么这是不好的?

ECMAScript 6 允许程序员使用模板字面量创建包含变量或表达式的字符串。这通过在反引号之间嵌入如 ${variable} 这样的表达式来实现。如果在使用普通引号('")时使用了模板字面量语法,结果将是一个字面量字符串 "${variable}",而不是对表达式求值。此规则有助于避免此类错误,确保表达式在模板字面量内正确求值。

示例

此规则的 错误 代码示例:

javascript
"Hello ${name}!";
"Hello ${name}!";
"Time: ${12 * 60 * 60 * 1000}";

此规则的 正确 代码示例:

javascript
`Hello ${name}!`;
`Time: ${12 * 60 * 60 * 1000}`;
templateFunction`Hello ${name}`;

如何使用

要通过配置文件或 CLI 启用 此规则,可以使用:

json
{
  "rules": {
    "no-template-curly-in-string": "error"
  }
}
bash
oxlint --deny no-template-curly-in-string

参考资料