这个没有意义...

ESLint 提示之后的新行(第 11 行。

如果我将它拿走并将 Provider 组件放在同一行,并从第 12 行和第 13 行(App 组件和关闭 Provider 标签)移开一个标签,那么它会提示:

预期的结束标记与开头的缩进相匹配。 ( react /jsx-关闭标签位置)

如果我将它缩进到现在开始 16 个字符的开始标记的级别,因为我不得不删除新行,我会收到另一个错误:
预期缩进 0 个空格字符,但发现缩进 16 个。 (react/jsx-indent)

是否有适用于 ESLint 和 AirBNB 规范的 React/Redux 的正确语法?

import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import './index.css';
import App from './components/App';
import registerServiceWorker from './registerServiceWorker';
import configureStore from './state/store/configureStore';

window.store = configureStore();

ReactDOM.render(
  <Provider store={window.store}>
    <App />
  </Provider>, document.getElementById('root'));
registerServiceWorker();

最佳答案

似乎 airbnb 使用 function-paren-newline: 'multiline' 作为该规则,这意味着这应该通过:

ReactDOM.render(
  <Provider store={window.store}>
    <App />
  </Provider>,
  document.getElementById('root')
);

我认为你只需要在单独的行上每个论点。

更新:
请参阅 eslint.org 上的 demo of the rule passing/failing

关于reactjs - ESLint simple react App.js Unexpected newline after parentheses function-paren-newline,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46869326/

10-10 10:43