老师这里不应该是PageList吗

来源:4-3 使用动态路由获取不同列表内容(3)

请你摘掉伪善的面具

2021-08-21 22:15:22

相关代码:

import React, { Component,Fragment} from 'react';
import ReactDom from 'react-dom';
import {Layout} from 'antd';
import { BrowserRouter,Route,Switch } from 'react-router-dom';
import AppHeader from './components/Header';
import PageList from './containers/List';
import Detail from './containers/Detail';
import 'antd/dist/antd.css';
import './style.css';
const { Header, Content, Footer } = Layout;

class App extends Component {
render() {
return (
<BrowserRouter>
<Layout style={{ minWidth: 1300, height: '100%' }}>
<Header className="header">
<AppHeader />
</Header>
<Content className="content">

<Switch>
<Route path='/detail' component={Detail} />
<Route path='/:id?' component={PageList} />
</Switch>
</Content>
<Footer className="footer">@copyright Dell-lee 2018</Footer>
</Layout>
</BrowserRouter>
)
}
}


ReactDom.render(<App />, document.getElementById('root'));

相关代码:

import React,{Component} from 'react';
import { List} from 'antd';
import axios from 'axios';

class PageList extends Component{
componentWillReceiveProps(nextProps){
const id=nextProps.match.params.id;
axios.get('http://www.dell-lee.com/react/api/list.json?id='+id).then(res=>{
this.setState({
data:res.data.data
});
})
}

constructor(props){
super(props);
this.state={
data:[]
}
}
render(){
return (
<List
style={{background:'#fff'}}
bordered
dataSource={this.state.data}
renderItem={item => (<List.Item>{item.title}</List.Item>)}
/>
)
}
componentDidMount(){
let url='http://www.dell-lee.com/react/api/list.json';
const id=this.props.match.params.id;
if(id){
url=url+'?id='+id;
}
axios.get(url).then(res=>{
this.setState({
data:res.data.data
});
console.log(res.data.data);
})
}
}

export default PageList;

我发现你路由这边还是List

相关代码:

<Route path='/:id?' component={PageList} /> //List?  PageList?


写回答

1回答

好帮手慕慕子

2021-08-22

同学你好, 使用PageList还是List都是可以的,因为List/index.js文件中使用export default PageList方法导出,所以import方式导入这里的名称可以自定义,只要前后使用时保持一致即可,如下:

http://img.mukewang.com/climg/6121c11909c8762f08680744.jpg

有关模块的导入导出规则,同学可以回顾下前面的课程​,加深理解与记忆。

祝学习愉快~

0

0 学习 · 15276 问题

查看课程