2014-08-29 3 views
13

मेरे पास निम्न लिंक है।यूआई-राउटर की यूई-एसईआरई का प्रयोग करें क्वेरी पैराम्स सेट करने के लिए बस

<a ui-sref="...">Clicking this adds ?test=true to the query params.</a> 

वहाँ ui-sref विशेषता का उपयोग करने के लिए बस पृष्ठ पुनः लोड करने या किसी अन्य समारोह के लिए निर्देश दिए बिना क्वेरी पैरामीटर को बदलने के लिए कोई तरीका है?

उत्तर

23

आपको राज्य के साथ तर्क पारित करके इसे करने में सक्षम होना चाहिए।

कोशिश: -

<a ui-sref="yourStateName({test:true})">Clicking this adds ?test=true to the query params.</a> 

Usage:

ui-sref = 'stateName' -, राज्य पर नेविगेट कोई पैरामीटर। 'stateName' किसी भी पूर्ण पूर्ण या सापेक्ष स्थिति हो सकता है, उसी वाक्यविन्यास नियमों के बाद $ state.go()

ui-sref = 'stateName ({param: value, param: value})' - राज्य पर नेविगेट करें , पैराम्स के साथ।

+2

यह राज्य पैरामीटर के लिए काम करता है लेकिन क्वेरी कमांड के लिए नहीं –

+5

@itcouldevenbeaboat आपको इसे अपने मार्ग में भी निर्दिष्ट करने की आवश्यकता है। उदाहरण के लिए: - 'url: "/ path1? test",' आपका मार्ग कैसा दिखता है? इस डेमो में रूट 1 पर होवर करें http://plnkr.co/edit/peERl4?p=preview, आपको test = true query string पैरामीटर – PSL

+0

आह दिखाई देगा जो एक अच्छा बिंदु है I कार्यान्वयन की कोशिश करूंगा –

7

पीएसएल के उत्तर के साथ संयोजन में, राज्य की स्थापना करते समय ताज़ा करने से रोकने के लिए, बस reloadOnSearch: false संपत्ति का उपयोग करें।

.state('myState', { 
     url: '/myState?test', 
     reloadOnSearch : false, 
     ... 
    }) 

जब तक आपके प्रश्न तब उसी स्थिति में होते हैं।

4

बस राज्य यूआरएल

$stateProvider.state('posts', { 
    url: '/posts?test&answer', 
    views: { 
     content: { 
     templateUrl: 'templates/posts/index', 
     controller: 'PostsController' 
     }, 
     navbar: { 
     templateUrl: 'templates/partials/navbar' 
     } 
    } 
    }) 

में क्वेरी पैरामीटर के नाम को परिभाषित और यह

<a ui-sref="posts({test: true, answer: false})">Next Page</a> 

तरह का उपयोग मैं ui रूटर संस्करण का उपयोग कर रहा 0.2.15

संबंधित मुद्दे