javascript - React 中 chrome 扩展中的组件之间切换的方式有哪些?

标签 javascript reactjs google-chrome-extension react-router

React 中 chrome 扩展中的组件之间切换的方式有哪些?我尝试使用react-router-dom,但它不起作用。预期效果:点击链接Details打开组件Details

<Router history={history}>
   <Link to="/">Details</Link>
   <Route path='/' component={Details}/>
</Router>

谁能向我解释一下如何使用:哈希和内存历史记录?

此处代码:https://stackblitz.com/edit/react-zdhfub

class Details extends Component {
  constructor(){
    super();
  }

  render() {

    return (  
      <div>
        <p>
            Here is description
        </p>
      </div>
    )
  }
}

class App extends React.Component {
  constructor() {
    super();
  }

  render() {

    return (
      <div>
        <Router history={history}>
           <Link to="/">Details</Link>
          <Route path='/' component={Details}/>
        </Router>
      </div>
    );
  }
}

最佳答案

你的问题是你的路线

<Route path='/' component={Details}/>

当您的项目运行时,默认情况下它将从 path='/' 加载组件,因此在您的情况下,默认情况下会加载 Details 组件。

要查看实际的路由效果,请单独创建 Routes 文件,然后将该文件导入到 App 组件中

<div>
  <Router history={history}>
     <Route exact path='/' component={Dashboard} />
     <Route path='/details' component={Details} />
  </Router>
</div>

Demo

关于javascript - React 中 chrome 扩展中的组件之间切换的方式有哪些?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57199690/

相关文章:

javascript - 如何在 react 中使用 tabs.executeScript

javascript - React Native - 如何在背景图像上显示内容并垂直居中该内容

javascript - React Ant Design - 在功能组件中生成列的最佳位置

php - 使用<a>标签在ajax中传递多个值,并检索提交的值

reactjs - 如何在对话框组件之外处理对话框状态?

javascript - 从渲染 Prop 中重用 React 组件

javascript - Chrome 扩展 - 激活当前选项卡的 popup.html 中的脚本

javascript - 如何通过程序自动从目录生成chrome扩展?

javascript - ES6 处理对象(Reduce 函数)

javascript - jquery 与 js 脚本冲突