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