私はmy-app.html
でこれを持っている:ルーティングの問題が
<app-location route="{{route}}"></app-location>
<app-route route="{{route}}" pattern="/:page" data="{{routeData}}" tail="{{subRoute}}"></app-route>
それはかなり標準のルーティングです。 (PSK ALA)動的にロードし、含まれるサブページmy-gigs.html
の
ワン:my-gig.html
で
<iron-pages id="pageSelector" role="main" selected="[[page]]" attr-for-selected="name" fallback-selection="view404">
...
<my-gig
name="gig"
route="{{subRoute}}"
</my-gig>
<my-city
name="city"
route="{{subRoute}}"
</my-city>
は、私がURLに応じて特定のギグを表示できるようにしたいです。だから、私は持っている:
<app-route route="{{route}}" pattern="/:gigId" data="{{routeDataGig}}" active="{{activeGig}}"></app-route>
トラブルは、私は(と言う/city/perth-au
、my-city.html
から表示されている)アプリケーション内の別のページに移動するとき、上記のルートはアクティブであるということです(!)。それは、gigId
、perth-au
(これは明らかに有効なIDではないので完全に間違っています)のようになります。
紛失しています。以前にルーティングで問題が発生した場合は、active
フラグを使用して、そのルートが、実際にはだったかどうかを確認しました。この問題では、/city/perth-au
と/gig/445454545
の両方がmy-gig.html
のルーティングを満たすため、問題があります。
私が間違っていることは...?その後、
<iron-ajax
id="ajax"
auto
url="{{_makeUrl(routeDataGig.gigId)}}"
handle-as="json"
debounce-duration="300"
last-response="{{response}}"
></iron-ajax>
そして:私はこの問題のために使用するソリューションである
_makeUrlIfNotInfo: function(gigId) {
if(this.route.prefix != '/gig') return;
return '/stores/gigs/' + gigId;
}
それは基本的に私がやっている同じだ - あなたは鉄 - 選択route.prefix' ...私は本当に私は完全に何かをやっていた期待していた 'のではなく、チェックしていることを除いて、愚かな、しかしまあ、明らかに私はそうではありません。 'app-route'は本当に根本的に欠陥があるようです – Merc