我试图将我的一些路由与React Router v4一起分组以清理一些组件。现在,我只想将非登录路由组和管理路由分组在一起,但是以下操作无效。
const Main = () => {
return (
<main>
<Switch>
<Route exact path='/' component={Public} />
<Route path='/admin' component={Admin} />
</Switch>
</main>
);
};
export default Main;
const Public = () => {
return (
<Switch>
<Route exact path='/' component={Greeting} />
<Route path='/signup' component={SignupPage} />
<Route path='/login' component={LoginPage} />
</Switch>
);
};
export default Public;
Greeting组件显示在“ localhost:3000 /”,但SignupPage组件显示在“ localhost:3000 /
signup”,而Login组件不显示在“ localhost:3000 / signup”。看一下React Dev Tools,这两条路线返回Null。
原因很明显。在main.js中为您的路线指定了Public
组件的Route路径,并指定了精确exact path='/'
,然后在Public组件中为另一个组件匹配Routes
。因此,如果路由路径为/signup
,则最初的路径不精确,因此Public
不会呈现组件,因此没有subRoutes会。
将您的路由配置更改为以下内容
main.js
const Main = () => {
return (
<main>
<Switch>
<Route path='/' component={Public} />
<Route path='/admin' component={Admin} />
</Switch>
</main>
);
};
export default Main
public.js
const Public = () => {
return (
<Switch>
<Route exact path='/' component={Greeting} />
<Route path='/signup' component={SignupPage} />
<Route path='/login' component={LoginPage} />
</Switch>
);
};
同样,当您指定嵌套路由时,它们应相对于父路由,例如,如果父路由为/home
,然后在您希望编写的子路由中/dashboard
。应该写成
<Route path="/home/dashboard" component={Dashboard}
甚至更好
<Route path={`${this.props.match.path}/dashboard`} component={Dashboard}
本文向大家介绍vue 刷新之后 嵌套路由不变 重新渲染页面的方法,包括了vue 刷新之后 嵌套路由不变 重新渲染页面的方法的使用技巧和注意事项,需要的朋友参考一下 解决嵌套路由刷新时,路由没有变化,正常情况下页面是不会重新渲染的 1、在router-view中加上条件渲染 v-if 默认为true。让它显示出来 2、写写一个reload方法,在页面刷新只有,点击某个查询条件的时候调用这个重载的方法
请问这样的数据在el-table里如何渲染出来,activityList也要渲染 id activityList 1 test1(2),test2(3) 这样的数据应该如何去渲染 还是处理一下rows里面的activityList这个数据?
问题内容: 我将如何呈现一个带有嵌套项目的菜单,而该嵌套项目的子对象数量不明,如下面的示例所示,该对象的反应如何? 问题答案: Codesandbox示例 您只需要递归调用Menu组件,其子组件即可显示并作为数据道具传递。
问题内容: 我有一个带有以下渲染的组件: policyLegend是一个对象数组,每个对象内都有一个“值”数组。 构建应用程序时,我没有收到任何错误,但是在组件页面上没有任何显示。我不确定我要去哪里错,请多多指教,谢谢。 问题答案: 这是因为您没有在policyLegend映射内返回任何内容。试试这个:
本文向大家介绍vue-router:嵌套路由的使用方法,包括了vue-router:嵌套路由的使用方法的使用技巧和注意事项,需要的朋友参考一下 模板抽离 我们已经学习过了Vue模板的另外定义形式,使用<template></template>。 然后js里定义路由组件的时候: 路由嵌套 实际应用界面,通常由多层嵌套的组件组合而成。 比如,我们 “首页”组件中,还嵌套着 “登录”和 “注册”组件,那
英文原文:http://emberjs.com/guides/routing/rendering-a-template/ 路由处理方法最主要的职责之一就是将恰当的模板渲染到屏幕上去。 默认情况下,路由处理方法将模板渲染到离它最近的带有模板的父级模板中去。 1 2 3 4 5 App.Router.map(function() { this.resource('posts'); }); Ap