Javascript 模式不匹配时,应用程序路由数据不会变为null

Javascript 模式不匹配时,应用程序路由数据不会变为null,javascript,polymer,polymer-1.0,web-component,Javascript,Polymer,Polymer 1.0,Web Component,我在Polymer上建立这个网站,由于一些奇怪的应用程序路径行为,我很难管理“返回” 这是一个简单的网站,由3个层次的深度和2种语言(西班牙语和英语)组成。该网站展示了一些建筑项目及其细节,以及关于设计师的其他部分,因此路线如下: /#/lang/section/(用于一般导航) /#/lang/section/projectId(用于查看项目详细信息时) Im在我的主要应用程序元素中使用1app location和3app route,如下所示: <app-location route=

我在Polymer上建立这个网站,由于一些奇怪的应用程序路径行为,我很难管理“返回”

这是一个简单的网站,由3个层次的深度和2种语言(西班牙语和英语)组成。该网站展示了一些建筑项目及其细节,以及关于设计师的其他部分,因此路线如下:

/#/lang/section/(用于一般导航)
/#/lang/section/projectId(用于查看项目详细信息时)

Im在我的主要应用程序元素中使用1
app location
和3
app route
,如下所示:

<app-location route="{{route}}" use-hash-as-path></app-location>
    <app-route
            route="{{route}}"
            pattern="/:language"
            data="{{languageData}}"
            tail="{{languageSubRoute}}"></app-route>

    <app-route
            route="{{languageSubRoute}}"
            pattern="/:section"
            data="{{sectionData}}"
            tail="{{sectionSubRoute}}"></app-route>

    <app-route
            route="{{sectionSubRoute}}"
            pattern="/:projectName"
            data="{{projectData}}"></app-route>
<projects-view name=" [[_getSectionByLanguage(languageData,'Projects')]]"
                               language="[[languageData.language]]" 
                               displayed-project="[[projectData.projectName]]">
因此,正如您所看到的,即使在第三个
应用程序路径
中没有与模式匹配的数据对象(projectData)也不会变为null

发生什么事了

languageSubRoute: {"prefix":"/en","path":"/projects","__queryParams":{}}
sectionData: {"section":"projects"}
sectionSubRoute: {"prefix":"/en/projects","path":"","__queryParams":{}}
projectData: {"projectName":"Some Project"}