草庐IT

Lan-Router

全部标签

javascript - 使用 react-router 以编程方式导航

我正在开发一个应用程序,我在其中检查用户是否未loggedIn。我必须显示登录表单,否则dispatch将更改路由并加载其他组件的action。这是我的代码:render(){if(isLoggedIn){//dispatchanactiontochangetheroute}//returnlogincomponent}我如何实现这一点,因为我无法在render函数中更改状态。 最佳答案 考虑到您正在使用react-routerv4将您的组件与withRouter一起使用,并使用props中的history.push来更改路由。只有

javascript - 如何在 react-router 中为 Link 或 IndexLink 的包装元素设置 activeClassName?

我是ReactJS世界的新手,想知道如何将事件类名传递给元素而不是(Link)元素。现在我有了这样的代码。单击时anchor类会发生变化。ABC但我想得到类似的东西:ABC提前致谢 最佳答案 您需要附上您的作为路由器感知组件:import{Link,IndexLink}from'react-router'classNavItemextendsReact.Component{render(){const{router}=this.contextconst{index,onlyActiveOnIndex,to,children,...p

javascript - 在 Angular ui-router 中嵌套状态 url 发生变化,但模板未加载

我将ui-router用于嵌套状态和View。当我单击链接时,URL更改为子状态的URL,但模板未加载。例如,当URL更改为子状态project/settings时,相应的模板project.settings.html不会加载。这是由Plunkr提供的SSCCE下面也是我的代码:应用程序.jsmyApp.config(function($stateProvider,$urlRouterProvider){$stateProvider.state('project',{url:"/project",views:{"content":{templateUrl:"partials/proje

javascript - 如何获取新数据以响应 Redux 对 React Router 的更改?

我正在使用Redux、redux-router和reactjs。我正在尝试制作一个应用程序来获取有关路线更改的信息,因此,我有类似的东西:当有人进入artist/我想搜索艺术家,然后呈现信息。问题是,这样做的最佳方式是什么?我找到了一些关于它的答案,使用RxJS或尝试使用中间件来管理请求。现在,我的问题是,这是否真的有必要,或者只是一种保持架构react不可知的方法?我可以只从reactcomponentDidMount()和componentDidUpdate()获取我需要的信息吗?现在,我通过在那些请求信息的函数中触发一个操作来实现这一点,并在信息到达时重新呈现组件。该组件有一些属

javascript - react-router 在子组件中获取 this.props.location

据我了解将给出App与路由相关的Prop,如location和params.如果我的App组件有许多嵌套的子组件,我如何让子组件访问这些Prop而不需要:从App传递props使用窗口对象为嵌套的子组件创建路由我以为this.context.router会有一些与路线相关的信息,但是this.context.router似乎只有一些操作路线的功能。 最佳答案 V6您可以使用useNavigate,useLocation和useMatch在您的组件中获取matchPath,navigate和location.constChild=()

javascript - react-router 在每次转换时滚动到顶部

导航到另一个页面时出现问题,它的位置将与之前的页面保持一致。所以它不会自动滚动到顶部。我还尝试在onChange路由器上使用window.scrollTo(0,0)。我还使用了scrollBehavior来解决这个问题,但它没有用。对此有什么建议吗? 最佳答案 但是类(class)是2018年使用ReactHooks实现ScrollToTop滚动到顶部import{useEffect}from'react';import{withRouter}from'react-router-dom';functionScrollToTop({h

javascript - 与 React-Router 的事件链接?

我正在试用React-Router(v4),但我在启动Nav以让Link之一处于active时遇到问题。如果我点击任何Link标签,那么事件的东西就会开始工作。但是,我希望HomeLink在应用程序启动后立即处于事件状态,因为这是在/路径加载的组件。有什么办法吗?这是我当前的代码:constRouter=()=>(Home{/*Iwantthistostartoffasactive*/}About) 最佳答案 这是针对ReactRouterv4的旧的、过时的答案不再有activeClassName或activeStyle特性。在re

javascript - vue-router 可以在新标签页打开链接吗?

我有一个摘要页面和一个详细信息子页面。所有的路线都是用vue-router实现的(v0.7.x)使用这样的编程导航:this.$router.go({path:"/link/to/page"})但是,当我从摘要页面路由到子页面时,我需要在新选项卡中打开子页面,就像添加_target="blank"一样。到标签。有办法吗? 最佳答案 我认为你可以这样做:letrouteData=this.$router.resolve({name:'routeName',query:{data:"someData"}});window.open(ro

javascript - React-Router 只有一个 child

我不断收到错误:A'Router'mayhaveonlyonechildelement当使用react-router时。我似乎无法弄清楚为什么这不起作用,因为它与他们在示例中显示的代码完全一样:QuickStart这是我的代码:importReactfrom'react';importEditorstorefrom'./Editorstore';importAppfrom'./components/editor/App';importBaseLayerfrom'./components/baselayer';import{BrowserRouterasRouter,Route}from

javascript - 如何使用 react-router 重定向到另一条路由?

我正在尝试使用react-router(version^1.0.3)做一个简单的操作来重定向到另一个View。importReactfrom'react';import{Router,Route,Link,RouteHandler}from'react-router';classHomeSectionextendsReact.Component{staticcontextTypes={router:PropTypes.func.isRequired};constructor(props,context){super(props,context);}handleClick=()=>{co