Этот код работает хорошо, просто раздражает постоянно видеть эту ошибку.
Так что это очень большая ошибка с babel-sublime, а также есть открытая проблема, но пока нет ответа,Ссылка на проблему: https://github.com/babel/babel-sublime/issues/363.
Проблема в том, что когда вы создаете класс в ReactJs, а затем создаете две функции внутри этого класса, первая из них будет окрашена в виде ошибки, говорящей:
Неожиданный токен = (ноль)
Вторая функция не имеет ошибок, всегда первая.Обратите внимание, что это функции стрелок.
Этот код будет работать в Sublime Text 3 с установленным пакетом babel-sublime:
import React, { Component } from 'react';
class MyComponent extends Component {
firstFunction = () => {
return false;
}
secondFunction = () => {
return false;
}
thirdFunction = () => {
return false;
}
render() {
return(
<div>
Component
</div>
);
}
}
export default MyComponent;
Независимо от того, какую тему или цветовую схему вы используете, эта ошибкабудет присутствовать.Я поместил здесь скриншот, чтобы вы могли видеть другой цвет от первой функции, второй и т. Д. (На скриншоте нет ошибок, потому что я деактивировал его в правилах линтера).
РЕДАКТИРОВАТЬ: Я помещаю мое содержимое .eslintrc для вас, чтобы увидеть, если что-то делает эту ошибку.
{
"parser": "babel-eslint",
"ecmaFeatures": {
"modules": true,
"arrowFunctions": true,
"classes": true
},
"env": {
"node": true,
"browser": true,
"es6": true,
},
"rules": {
"no-console": 0,
"no-mixed-spaces-and-tabs": 0,
"react/prop-types": 0,
"react/no-unescaped-entities": 0,
"react/no-string-refs": 0,
"no-useless-escape": 0,
"no-irregular-whitespace": 0,
"strict": 0
},
"extends": [
"eslint:recommended",
"plugin:react/recommended",
],
"parserOptions": {
ecmaVersion: 6,
ecmaFeatures: {
jsx: true,
},
sourceType: "module"
},
}