나는 Ramda를 사용하여 간단한 할일 앱을 코딩하기로 결정했지만 관련 리팩토링과 관련된 리팩터링 작업이 하나만있었습니다. 내가 생각하는 바로 여기에 두 가지 기능은 리팩토링 수 :Ramda.js 리팩터링
const isItemCompleted = R.pipe(
R.prop("states"),
R.contains("completed")
)
const isItemEdited = R.pipe(
R.prop("states"),
R.contains("editing")
);
당신이 볼 수 있듯이, 거기에 약간의 코드 중복은 내가 더 상태가 있다면 이것은 심지어 지저분받을 것입니다.
const statesContains = R.flip(R.pipe(
R.prop('states'),
R.contains()
))
//I would like to use it like this:
const isItemCompleted = statesContains("completed")
const isItemEdited = statesContains("editing")
을하지만 난 그냥이 주위에 내 머리를 정리 할 수 없습니다 나는 같은 중복 기능을 분리하는 것을 시도하고있다. 다른 인수 순서로 작동하도록 만들 수 있지만 간결한 함수를 만들기 위해 데이터 마지막 규칙을 따르고 싶습니다.
let item = {states:["editing", "complete"]};
isItemCompleted(item); //true
모든 (기능) 아이디어 :
데이터는 다음과 같이 될 수 이러한 isItemCompleted 및 isItemEdited 함수에 전달되는?