$符号无法将文本转换为对应代码应当如何解决?
问题排查与解决方法
根因说明
你遇到的是JavaScript模板字符串语法使用错误问题:${}插值语法仅支持**反引号(,键盘ESC键下方的按键)** 包裹的模板字符串生效,你当前代码使用单引号'包裹字符串,属于普通字符串格式,不会解析内部的${}`插值表达式,只会将其当做普通文本输出。
排查步骤
- 检查包含
${}的字符串的包裹符号,确认不是单引号或双引号 - 若使用了反引号仍不生效,检查项目编译配置是否支持ES6+语法,是否存在ES6转ES5的编译规则异常
修复方案
方案1(推荐,ES6+环境可用)
将字符串包裹的单引号替换为反引号即可,修复后代码如下:
if(this.rules.min && this.value.length < this.rules.min){ return `Minimum length is ${this.rules.min}` }
方案2(兼容ES5老旧环境)
如果你的项目需要兼容不支持ES6语法的老旧环境,可改用字符串拼接实现:
if(this.rules.min && this.value.length < this.rules.min){ return 'Minimum length is ' + this.rules.min }
内容的提问来源于stack exchange,提问作者Mohammad Khashei
相关产品推荐
相关产品推荐

