javascript - ReactJs 带有 { hashHistory } 的不错的 URL

标签 javascript reactjs routes

我正在学习Reactjs和路线。

所以问题是路由正在工作,但他们将其添加到网址“/#/AboutUs?_k=gb8gte”。

如何才能使 URL 变得用户友好?只是类似/AboutUs

ReactDOM.render(
<Router history={hashHistory}>
    <Route path="/" component={Layout}>
        <Route path="Today" component={Today}></Route>
        <Route path="EndingSoon" component={EndingSoon}></Route>
        <Route path="AboutUs" component={About}></Route>
        <Route path="Contact" component={Contact}></Route>
    </Route>
</Router>
, app);

这是 nav.js

import React from "react";
import ReactDOM from "react-dom";
import { Link } from 'react-router'

export default class Nav extends React.Component {
render() {
    return(
        <nav>
            <Link to="Today">Today</Link>
            <Link to="EndingSoon">Ending Soon</Link>
            <img src="img/logo.png"/>
            <Link to="AboutUs">About Us</Link>
            <Link to="Contact">Contact</Link>
        </nav>
    );
}
}

最佳答案

为了获得干净(用户友好)的网址,您必须配置您的服务器。并使用 browserHistory 而不是 hashHistory

看看以下来自react-router的教程。

https://github.com/reactjs/react-router-tutorial/tree/master/lessons/10-clean-urls

希望对你有帮助!

关于javascript - ReactJs 带有 { hashHistory } 的不错的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37967119/

相关文章:

javascript - 根据复选框更改文本框值

javascript - 在循环中调用多个异步调用未按预期工作

reactjs - BlueprintJS 的最小 Webpack 2 设置不会加载 CSS

javascript - 使用 ui-router 时如何去掉/#/?

c# - 从路由参数注入(inject) Controller 依赖

javascript - 如何将运动剪辑到边界框?

javascript - jQuery ajax 成功页面中的搜索框 - 循环中的问题

reactjs - 在 "exportPathMap"中找不到 "next.config.js"。从 "./pages"生成 map

javascript - react : How to conditionally render?

node.js - 无法获取在 Nodejs 中工作的路由