2016-06-07 104 views
3

我在聚合物中使用<app-route>。一切工作正常,除重定向。我讀過https://www.polymer-project.org/1.0/toolbox/routing,這個解釋似乎很清楚,但由於某種原因,它不能按照我希望的方式工作。聚合物應用路由重定向

某處在我有一個元素的觀點...

<script> 
    Polymer({ 
     is: 'user-auth', 
     responseHandler: function(event) { 
      var token = event.detail.response.d.token; 
      if (token != '') { 
       localStorage.setItem('access_token', token); 
       this.set('route.path', '/hello'); 
      } 

     } 
    }); 
</script> 

的問題是,它重定向到/x/y/z/hello,而不是/hello爲絕對URL。我怎樣才能使重定向絕對?

+0

嗨安德魯!幾乎和你一樣遇到同樣的問題。我認爲問題在於「這個」本身。嘗試通過document.querySelector或document.getElementById定位元素,一旦抓住它,應用this.set。這就是我剛纔所做的。 –

+0

另外,我現在看到「這」是孤獨的。你需要使用它來定位它。$。elementId。或者做一個document.querySelector來獲取它。讓我知道你的結果。 –

回答

-3

沒有<app-route>很難說。

另一個(髒)的辦法是:

<style> 
    #redirect { 
    display: none; 
    } 
</style> 

... 

<a id="redirect" href="/hello"></a> 

... 

<script> 
    ... 
    // at the place where you want to redirect 
    this.$.redirect.click(); 
    ... 
</script>