eslint/prefer-object-spread 스타일
작동 방식
Object.assign을 첫 번째 인자로 객체 리터럴을 사용할 때는 금지하고, 대신 객체 전개 구문을 사용하도록 권장합니다.
왜 문제가 될까요?
Object.assign이 첫 번째 인자로 객체 리터럴을 사용하여 호출될 경우, 이 규칙은 객체 전개 구문 사용을 요구합니다. 또한 단일 인자가 객체 리터럴인 Object.assign 호출의 경우에도 경고를 발생시킵니다. 이러한 경우 Object.assign 호출은 불필요합니다.
예시
이 규칙에 잘못된 예시:
js
Object.assign({}, foo);
Object.assign({}, { foo: "bar" });
Object.assign({ foo: "bar" }, baz);
Object.assign({}, baz, { foo: "bar" });
Object.assign({}, { ...baz });
// 단일 인자가 객체 리터럴인 Object.assign
Object.assign({});
Object.assign({ foo: bar });이 규칙에 올바른 예시:
js
({ ...foo });
({ ...baz, foo: "bar" });
// 첫 번째 인자가 객체 리터럴이 아닌 모든 Object.assign 호출
Object.assign(foo, { bar: baz });
Object.assign(foo, bar);
Object.assign(foo, { bar, baz });
Object.assign(foo, { ...baz });사용 방법
구성 파일 또는 명령줄에서 이 규칙을 활성화하려면 다음을 사용할 수 있습니다:
json
{
"rules": {
"prefer-object-spread": "error"
}
}bash
oxlint --deny prefer-object-spread