Eslint解析错误:下划线模板导致`Unexpected token <`

时间:2019-02-06 10:58:11

标签: javascript underscore.js eslint prettier

Eslint抛出Parsing error: Unexpected token <

StackOverflow上有很多类似的问题,但是它们并没有涵盖我的问题。

使用underscore template方法的template.js文件似乎导致了此错误。我尝试添加/* eslint-disable */// eslint-disable-line注释来忽略它,但是错误仍然发生。

template.js

'use strict';

const visit = require('unist-util-visit');
const nodeToString = require('hast-util-to-string');
<%= refractor %>

module.exports = options => {
// ...
}

.eslintrc

{
  "extends": "eslint:recommended",
  "env": {
    "node": true,
    "es6": true,
    "jest": true
  },
  "plugins": ["node"],
  "rules": {
    "node/no-unsupported-features": ["error", {"version": 8}],
    "node/no-missing-require": ["error"]
  }
}

package.json

"dependencies": {
    "underscore": "^1.9.1"
  },
  "devDependencies": {
    "eslint": "^5.13.0",
    "eslint-plugin-node": "^5.0.0",
    "husky": "^0.13.4",
    "jest": "^24.0.0",
    "lint-staged": "^4.0.0",
    "prettier": "^1.4.4"
  },

我希望Eslint能够识别下划线的模板,例如<%= languages %>并适当地掉毛它们。

1 个答案:

答案 0 :(得分:0)

我创建了ESLint插件eslint-plugin-lodash-template

如果您安装eslint-plugin-lodash-template并配置JavaScript templates,则可能会解决您的问题。