में शामिल हैं का उपयोग कर navigateByUrl यह सिर्फ एक सापेक्ष URL या अधिक जटिल कुछ भी लागू होती है कॉल?
यह एक रिश्तेदार टुकड़े आप commands
परम के माध्यम से प्रदान करते हैं और खाते में अतिरिक्त पैरामीटर आप extras
(NavigationExtras object) में पारित लेने से बनाया यूआरएल है।
उदाहरण के लिए, आप सक्रिय मार्ग से या रूट रूट से नेविगेट करने के लिए relativeTo
का उपयोग कर सकते हैं। आप यूआरएल के लिए क्वेरी पैरामीटर या खंड सेट कर सकते हैं जो आप नेविगेट करते हैं (queryParams
और fragment
अतिरिक्त में) या आप वर्तमान यूआरएल में मौजूद क्वेरी पैरामीटर को संरक्षित कर सकते हैं (queryParamsHandling
अतिरिक्त में)।
और इसी तरह, सामान्य रूप से, यह वास्तव में URL द्वारा केवल एक नेविगेशन की तुलना में कुछ अधिक जटिल है क्योंकि हम URL को गतिशील रूप से बनाते हैं।
पूर्ण नेविगेशन के मामले में इसका किस प्रकार का डेल्टा संदर्भित करता है?
यह सापेक्ष और निरपेक्ष नेविगेशन के लिए एक ही है - डेल्टा परिवर्तनों के समूह (commands
) वर्तमान मार्ग (रिश्तेदार) को लागू करने के लिए या रूट रूट करने के लिए (पूर्ण) नए राज्य के लिए आवेदन हस्तांतरण करने के लिए है (बस navigateByUrl
के माध्यम से नए URL प्रदान करने के खिलाफ)।
सरल मामले में, यदि आप this.router.navigate(['/heroes'])
की तरह कुछ करना यह वास्तव में नहीं navigateByUrl
का उपयोग करने से बहुत अलग है, लेकिन इन उदाहरणों पर विचार (createUrlTree जो वास्तव में commands
और extras
धर्मान्तरित अंतिम URL देखें):
// create /team/33/(user/11//right:chat)
router.createUrlTree(['/team', 33, {outlets: {primary: 'user/11', right: 'chat'}}]);
// remove the right secondary node
router.createUrlTree(['/team', 33, {outlets: {primary: 'user/11', right: null}}]);
तो भी पूर्ण नेविगेशन के लिए, navigate
विधि अतिरिक्त उपकरण गतिशील यूआरएल का निर्माण करने का एक सेट प्रदान करता है। आप navigateByUrl
के साथ ऐसा कर सकता है, लेकिन आप शायद पार्स होगा/concat/तार के साथ अन्य manipluations कर (या navigate
और createUrlTree
क्या प्रदान करने के लिए इसी तरह के स्वयं के उपकरण का विकास होगा)।
स्रोत
2017-11-24 17:49:49
डेल्टा क्या है? मुझे अभी कोणीय दस्तावेज़ों में 'डेल्टा' के लिए एक जगह मिली है, यह राउटरलिंक एपीआई दस्तावेज़ पृष्ठ के लिए एक हिस्सा है: > राउटर लिंक निर्देश हमेशा प्रदत्त इनपुट को वर्तमान यूआरएल में डेल्टा के रूप में मानता है। > उदाहरण के लिए, यदि वर्तमान यूआरएल/उपयोगकर्ता/(बॉक्स // aux: टीम) है। > फिर निम्न लिंक Jim लिंक/उपयोगकर्ता/(jim // aux: टीम) उत्पन्न करेगा। अधिक जानकारी के लिए createUrlTree देखें। '' – Hayden