मैं रेड्यूसर में रेडक्स-राउटर के साथ वर्तमान स्थान का वर्तमान पथ और क्वेरी कैसे प्राप्त करूं। मैं mapStateToProps के साथ घटक के अंदर आसानी से पथनाम प्राप्त करने में सक्षम हूं, लेकिन मैं रेड्यूसर में वर्तमान पथ तक पहुंच बनाना चाहता हूं। मैं रेडक्स-राउटर 1.0.0-बीटा 7, प्रतिक्रिया-राउटर 1.0.3 का उपयोग कर रहा हूं।रेड्यूसर (रेडक्स-राउटर) में वर्तमान स्थान का उपयोग कैसे करें?
6
A
उत्तर
12
.way - के माध्यम से redux-thunk और getState() विशेष कार्रवाई साथ पथ नाम पारित
const someAction = data =>(dispatch,getState)=>{
dispatch({
type:'SOME_ACTION',
pathname:getState().router.pathname
})
}
.way - मिडलवेयर लिख सकते हैं और हर कार्रवाई के साथ पथ नाम पारित
///write middleware
export const attachPathNameToAction = store => next => action=>{
action.pathname = store.getState().router.pathname //<-----passing pathname
next(action)
};
///then in reducer you allways can get pathname
case 'SOME_ACTION':
let pathname = action.pathname \\ <-------------
return {...state, action.data}
.way - घटक के this.props.location.pathname
//in component
let {pathname}= this.props.location;
this.props.someAction(data, pathname);
//workflow: component -> action -> reducer
+2
काम करता है मिडलवेयर समाधान बहुत अच्छा है! उसके लिए धन्यवाद। मुझे सच में आश्चर्य है कि उनके पास प्लगइन क्यों नहीं है। – Tomer
+0
ध्यान दें कि यह '... .router.location.pathname' है, नहीं ... ...router.pathname'। –
संबंधित मुद्दे
- 1. ग्रहण: वर्तमान फ़ाइल का स्थान प्राप्त करें?
- 2. उपयोगकर्ता का वर्तमान स्थान प्राप्त करें एंड्रॉइड
- 3. आईओएस वर्तमान स्थान अनुमति संवाद का उपयोग करें फोनगैप ऐप
- 4. स्थान में लक्ष्य का उपयोग कैसे करें.href
- 5. रिएक्ट-रेडक्स: रेड्यूसर का संयोजन
- 6. रेडक्स रेड्यूसर को रेड्यूसर क्यों कहा जाता है?
- 7. Google+ एपीआई: प्रोफ़ाइल का वर्तमान स्थान
- 8. WKWebView का वर्तमान मेमोरी उपयोग प्राप्त करें?
- 9. वर्तमान का उपयोग कैसे करें? रूबी परियोजनाओं में?
- 10. रेडक्स रेड्यूसर
- 11. रिवर्स जियोकोड वर्तमान स्थान
- 12. एंड्रॉयड जीपीएस वर्तमान स्थान
- 13. आईपैड मैपकिट - "वर्तमान स्थान" का शीर्षक बदलें
- 14. प्रतिक्रिया-राउटर से वर्तमान स्थान कैसे प्राप्त करें?
- 15. एंड्रॉइड - वर्तमान स्थान (अक्षांश और देशांतर) कैसे प्राप्त करें?
- 16. एक मनमानी स्थान से जेडीबीसी ड्राइवर का उपयोग कैसे करें
- 17. jQuery यूआई क्रमबद्ध, अद्यतन घटना में वर्तमान स्थान और नया स्थान कैसे निर्धारित करें?
- 18. एंड्रॉइड जीपीएस वर्तमान स्थान
- 19. कोई स्रोत वर्तमान स्थान
- 20. ब्राउज़र इतिहास में वर्तमान स्थान अनुक्रमणिका को कैसे खोजें
- 21. वर्तमान स्थान मार्कर (नीले वृत्त)
- 22. उपयोगकर्ता स्थान सेटिंग के बावजूद एंड्रॉइड डिवाइस के वर्तमान देश स्थान को कैसे निर्धारित करें?
- 23. एएसपी .नेट वर्तमान भौतिक स्थान
- 24. रेडक्स/प्रतिक्रिया ऐप में राज्य में रेड्यूसर
- 25. उपयोगकर्ता स्थान से कर्नेल स्पेस का उपयोग कैसे करें?
- 26. वैश्विक स्तर पर वर्तमान HttpRequestMessage ऑब्जेक्ट का उपयोग कैसे करें?
- 27. शेफ डेटा बैग से वर्तमान मूल्यों का उपयोग कैसे करें?
- 28. jquery का उपयोग कर वर्तमान दिनांक कैसे प्राप्त करें?
- 29. एक नाम स्थान के अंदर MySQLi का उपयोग कैसे करें
- 30. वर्तमान लोकेल के साथ strerror_l का उपयोग कैसे करें?
से पारित पथ नाम हो सकता है आप पथ कम करने में कार्रवाई creater के माध्यम से पारित कर सकते हैं? –
आप वर्तमान पथ के "सत्य के स्रोत" को डुप्लिकेट क्यों करेंगे? यदि आपको वर्तमान पथ तक पहुंच की आवश्यकता है, तो इसे 'प्रोटर' से प्राप्त करें क्योंकि 'राउटर' स्वचालित रूप से पारित हो जाता है। मार्ग स्थान के लिए राउटर सत्य का स्रोत है, इसे Redux में डुप्लिकेट करने की आवश्यकता नहीं है। यदि आपको इसे लेखक रेडक्स से सुनना है, तो इसे देखें: https://egghead.io/lessons/javascript-redux-filtering-redux-state-with-react-router-params – lux
इस प्रकार [redux-router] (https://github.com/acdlite/redux-router#differences-with-react-router-redux) –