0
Warum schlägt das folgende fehl, eine Funktion zurückzugeben?Ramda-Negation in beiden
const isValid = both(not(isEmpty), is(Object));
Der Artikel gültig ist, wenn es:
- Exists
- ist ein Array
- nicht leer
Warum schlägt das folgende fehl, eine Funktion zurückzugeben?Ramda-Negation in beiden
const isValid = both(not(isEmpty), is(Object));
Der Artikel gültig ist, wenn es:
Wie in meinem Kommentar erwähnt wird, ist not
, ähem, nicht was Sie wollen. Stattdessen versuchen complement
:
const isValid = R.both(R.complement(R.isEmpty), R.is(Array));
console.log(isValid);
console.log(isValid([1,2,3]));
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/ramda.min.js"></script>
Meine Ergänzungen. Keine schlechte Antwort. Ich werde meinen Mantel holen. – Undistraction
Docs für 'not':.„Eine Funktion, die von ihrem Argumente zurück Es ist wahr zurück, wenn falsch-y-Wert übergeben, und falsch, wenn übergeben ein wahrheitsliebender ". 'isEmpty' ist truthy, da es eine Referenz auf eine existierende Funktion ist. Vorsicht, es ist ein Verweis auf die Funktion *, nicht das Ergebnis des Aufrufs dieser Funktion. –
Was gibt es für Sie zurück? Wie importierst du Ramda? – c69