文章列表的显示 以及创建文章 还有文章详情的基本--react项目5
第一步:在render之前设置一个状态state 在点击我的文章按钮得时候绑定事件 执行一个函数进行如果Tab=1 样式为高亮 当点击喜欢文章得时候 tab为2 样式为高亮
进行高亮事件
第二步:在我默认一加载得时候需要默认显示我的文章
思路:
1:在mapdispatch 添加两个获取作者得文章还有获取作者喜欢得文章 参数为用户名username 默认获取第一页
2:在action里面写一下这两个action
3:在用户中心刚刚加载得时候也可以载DIdmount生命周期里面获取用户得文章this.props.getArticleByAuthor(username)
然后发送action 调用getFavorite方法里面在调用get request请求 然后reducer接收到action 进行批量查询我的文章以及喜欢得文章
上面得基础都是得先在按钮上绑定 this.props.getArticlesByAuthor(profile.username) 以及this.props.getArticlesByFavorite(profile.username)进行触发显示得
到现在能拿到回来得数据了
创建文章基本步骤:
1:from表单创建 有文章标题 文章描述 还有编辑文章 , 输入标签的框 和注册页面差不多
搭建一个基础的表单页面
注意 : 把输入标签需要绑定一个onKeyUp事件
2:创建reducer 关于单个文章的
设置初始标题 描述 内容 标签 ,标签数组,错误
创建的单个文章的创建常量 Fileld 在reducer里面去应用返回新的值
因为每个描述都绑定一个事件 有这个事件 会生成一个action身上会有一个方法(例如更新文章,获取文章。。。的那种)然后一个对象 然后这个action返回去由dispatch 去发送action,进入到reducer里面去进行修改数据,最后然后通过value绑定的进行回显。、
到这 数据可以完好的输入了
标签实现功能:输入标签 ,标签挂到文章上,并且再发布文章上点击小图标可以删除标签
1:现在就利用onkeyup属性绑定的this.watcherEnter事件
2:监听的这个事件keyCode属性当我点击回车的时候发现控制台输出是13所以
进行判断如果keyCode==13 那么去处理 通过This.props.addTag去添加标签,同时addTag也需要在mapDispatch定义一下,在写一个相应得对应actions和相应得reducer,
3:最后这样在reduce中返回新的数组const tags = state.tags.concat([state.tag])
这样就返回一个新数组了 可以在页面中取出tags 然后在输入标签下面进行遍历,展示出来
同时还可以在我遍历得tag上面写一个事件方便去删除
4:Bug描述:在进行添加标签得时候,没有考虑深拷贝问题,直接push把标签放里,直接return state
执行事件,标签并没有进行显示。
解决思路:首先出现这个问题是因为我没有考虑到深拷贝得问题 initState【】是一个数组 tags又是一个数组 return 得还是原先的地址值 并没有进行一个深拷贝,
解决办法:用concat方法把新标签和原有标签进行合并,这样就返回一个新数组 然后进行return 覆盖
5:删除标签
在删除标签得图标上绑定一个remove Tag事件定义常量然后去action在去reduce,进行删除
6:创建文章
一套流程
7:进入文章 详情
在挂载的生命周期里面进行根据id获取文章
mapState中获取到文章里面的数值,还有登录的用户信息
头部展示文章的标题 作者名字 以及文章内容 其中还有评论
其中在头部信息还要封装一个button行为因为要是未登录应该展示喜欢 然后还可以定向到登录也页面
如果登录的是自己的那么就展示编辑 删除 如果是别人的就展示喜欢
大体是这样下一篇详细表达
文章列表的显示 以及创建文章 还有文章详情的基本--react项目5相关推荐
- Ecshop文章列表页显示内容摘要
本教程中讲到的"内容摘要"指的是文章内容的前 60个字符(当然也可以是前40个,前50个等等) 下面以 2.7.2版 + 官方默认模板 为例进行讲解: 1).修改 includes ...
- layui获得列表json数据_golang实战开发之博客功能篇:文章列表的读取与展示和分类筛选展示处理...
前面我们介绍了文章详情页面的展示的逻辑代码实现,这一节,我们将继续讲解文章列表的读取和展示.文章根据分类进行筛选.最新文章.热门文章等的调用处理逻辑. 首先,我们先编写文章列表页的前端代码.这里,我们 ...
- 前端学习(2456):文章列表
# 四.文章列表模块## 创建组件并配置路由1.创建 `src/views/article/index.vue````html <template><div class=" ...
- 仿今日头条项目——首页(展示文章列表)
1.头部导航栏组件 1.使用导航栏组件 2.在导航栏组件中插入按钮 <template><div class="home-container"><!- ...
- zblog php getlist,zblog php调用自定义文章列表函数GetList()介绍
在zblog asp版本制作zblog CMS模板时,调用自定义的文章列表时,通常会选择使用功能强大的YTCMS插件,而zblog php版本提供了GetList函数,通过该函数可以获取自定义的文章列 ...
- python 下载公众号文章_Python爬虫实现的微信公众号文章下载器
平时爱逛知乎,收藏了不少别人推荐的数据分析.机器学习相关的微信公众号(这里就不列举了,以免硬广嫌疑).但是在手机微信上一页页的翻阅历史文章浏览,很不方便,电脑端微信也不方便. 所以我就想有什么方法能否 ...
- 表格最多两行,超出显示...移入可以查看超出的详情。
表格最多两行,超出显示...移入可以查看超出的详情. 在vue3项目里. 思路是1.循环生成表格,给每个表格加上ref,vue3获取dom方式. 2 ref="tr" ;let ...
- laravel大型项目系列教程(四)之显示文章列表和用户修改文章
小编心语:不知不觉已经第四部分了,非常感谢很多人给小编提的意见,改了很多bug,希望以后能继续帮小编找找茬~小编也不希望误导大家~这一节,主要讲的是如何显示文章列表和让用户修改文章,小编预告一下(一共 ...
- springboot分页展示功能_基于SpringBoot从零构建博客网站 - 分页显示文章列表功能...
显示文章列表一般都是采用分页显示,比如每页10篇文章显示.这样就不用每次就将所有的文章查询出来,而且当文章数量特别多的时候,如果一次性查询出来很容易出现OOM异常. 后台的分页插件采用的是mybati ...
最新文章
- 2022-2028年中国半导体用环氧塑封料(EMC)行业市场全景调查及投资前景分析报告
- 错误 0xc0202049: 数据流任务 1: 无法在只读列“ID”中插入数据
- JSR 310新日期/时间API的自定义JSR 303 Bean验证约束
- oracle存储过程写法(一)
- 如何在数据表中存取图片 - 回复 三足乌 的问题
- HTML+CSS+JS实现 ❤️swiper倾斜图片特效❤️
- 虚拟时代将至:环绕计算才是未来
- Oracle学习 第18天 .NET连接Oracle
- mysql 创建表字段长度范围_老板要我把这份MySQL规范贴在工位上!
- c语言用链表实现成绩管理系统,C语言写的学生成绩管理系统(链表)
- python 功能代码是什么_Python功能代码
- 用大前端技术实现的一款仿Boss直聘app(已开源)
- svn服务端及客户端搭建和使用(一)
- 个人百科怎么做,如何申请个人百度百科
- 三分钟了解大数据是什么
- Linux性能监控命令_nmon 安装与使用
- Python面向对象和Java 面向对象的区别
- ESP32-S2 st7789 SPI TFT彩屏240X320
- 微信、QQ发消息功能测试用例
- [附源码]计算机毕业设计JAVA幼儿园管理系统