如何防止 Prettier 将测试代码从 1 行破坏为多行

Leo*_*ban 6 javascript lint prettier

有问题的代码

it('will display No Policy Found after fist submit attempt.', () => {
    const policyDetails = {
        partyID: null,
        agreementID: null,
        isValidPolicy: false,
    };
    wrapper.setProps({policyDetails});
    wrapper.setState({submitCount: 1});
    const result = wrapper.instance().displayUserNotices();
    const render = shallow(result)
        .find('UserNotice')
        .find('p');

    expect(render.text()).toEqual(NO_POLICY_USER_NOTICE);
});
Run Code Online (Sandbox Code Playgroud)

我继续写

const render = shallow(result)
  .find('UserNotice')
  .find('p');
Run Code Online (Sandbox Code Playgroud)

作为所需的以下 1 行:

const render = shallow(result).find('UserNotice').find('p');

但更漂亮的人不断恢复它。

我尝试添加

noUnexpectedMultiline: true在 .prettierrc.yml 中,但这不起作用。

有想法吗?

Kei*_*eno 3

为了防止 Prettier 格式化您的代码,请在变量/函数/等之前使用此注释。

// prettier-ignore
Run Code Online (Sandbox Code Playgroud)

如果你想让 prettier 忽略 Markdown 中的多行,你也可以这样做。

<!-- prettier-ignore-start -->
# Headline

```js
const foo      =         'hey';
console.log      (foo);
```
<!-- prettier-ignore-end -->
Run Code Online (Sandbox Code Playgroud)

欲了解更多信息:https://prettier.io/docs/en/ignore.html

  • `// prettier-ignore-start` 和 `// prettier-ignore-end` 目前仅在 markdown 中工作。 (17认同)