मैं इस के माध्यम से पढ़ रहा था: https://github.com/pburtchaell/redux-promise-middleware/blob/master/src/index.jsक्या है ... !! ES6 में वाक्यविन्यास?
मुझे पता है कि ...
वस्तु प्रसार के रूप में इस्तेमाल किया जा रहा है। मुझे पता है कि !!
किसी भी सत्यता के साथ किसी भी बुलियन में परिवर्तित करने के लिए प्रयोग किया जाता है।
हालांकि यह जानकर उनका क्या मतलब है जब उन्हें ...!!
जैसे एक साथ रखा जाता है?
{
...resolveAction,
...isAction(rejected) ? rejected : {
...!!rejected && { payload: rejected }
}
...resolveAction
सिर्फresolveAction
की चाबी फैलता है: मैं मुसीबत यहाँ अंतिम पंक्ति को समझने की है।...isAction(rejected) ?
जांच करेगा किrejected
कोई कार्रवाई हल करता है और फिर इसे फैलाएगा।rejected
जोड़ने अगर सच{...!!rejected && { payload: rejected }
आपत्ति उठाने (यह एक या तो के बारे में सुनिश्चित नहीं हैं) ????????????????
...!!
भी वैध वाक्यविन्यास है?
यह
!!
पहले लागू किया जाता है कि यह एक बूलियन मान है और यह प्रसार नहीं किया जा सकता है वस्तु पहले, तो!!
सब प्रसार कुंजीपर लागू किया जाएगा फैलता है तो: वहाँ दो विकल्प हैं ।
तो यह कोई मतलब नहीं जो भी पड़ता है, या मैं कुछ क्योंकि उस कोड को देखते हुए याद आ रही है, मैं इसे एक बूलियन मान प्रसार करने के लिए कोशिश कर रहा है मान लेते हैं।
कि रेपो में, 'rejected' एक वस्तु (लाइन 54) है। हो सकता है कि स्प्रेड ऑपरेटर '!!' के संयोजन के साथ वस्तु की प्रत्येक संपत्ति को बदल देता है? – Scott
मेरा अनुमान है, और यह केवल एक अनुमान है क्योंकि मुझे ES6 spec में preendences के बारे में कुछ भी नहीं मिला है, कि '...' की कम प्राथमिकता है इसलिए वास्तव में प्रसार को अस्वीकार कर दिया गया है और {{पेलोड: अस्वीकार} '। तो कोड वास्तव में परीक्षण क्या है कि एक अस्वीकार मूल्य है और यदि इसे 'पेलोड' – nbermudezs
@nbermudezs नामक कुंजी के रूप में पास किया गया है, तो मुझे लगता है कि आप कुछ पर हैं। यदि पहला सत्य है तो एक '&&' दूसरा मान वापस कर देगा, इसलिए वस्तु मूल वस्तु में फैल जाती है। – L3viathan