最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

react项目案例总结

来源:动视网 责编:小采 时间:2020-11-27 20:03:35
文档

react项目案例总结

react项目案例总结:刚刚开始写组件的时候,感觉难度不大(跟vue差不多)。最有意思的应该是jsx语法,个人感觉,jsx的功能性确实比vue的template更强,而且可读性更高.// vue <p :id="text" :class="{'active':isActiv
推荐度:
导读react项目案例总结:刚刚开始写组件的时候,感觉难度不大(跟vue差不多)。最有意思的应该是jsx语法,个人感觉,jsx的功能性确实比vue的template更强,而且可读性更高.// vue <p :id="text" :class="{'active':isActiv


// vue
<ul>
 <li v-for="(item,index) in list" :key="index" v-if="showItem(item)">
 <span v-text="item.label"></span>
 </li>
</ul>

// vue的methods属性
methods:{
 showItem(item){
 return item.label.indexOf('abc') !== -1
 }
}
// jsx
<ul>
 {list.map((item,index) => {
 return item.label.indexOf('abc') !== -1 && (
 <li key={index}>
 <span>{item.label}</span>
 </li>
 )
 })}
</ul>

你会发现,在一些比较简单渲染需求时,使用vue的template会比较简单直接,而且很易懂.但是如果涉及一些比较复杂的逻辑处理渲染,jsx更直观,因为jsx的语法跟js的差异不大,相当于用js来描述需要如何渲染dom结构.当然jsx并不是说可以完成使用js的语法来写dom,{}里面只能是一个表达式,所以像if else或者switch这种语法在{}是不能用的.

关于组件模版的格式化,在react里面感觉更好一点,因为react组件就是用js写的,格式化和注释部分在编辑器得到更好的支持,但是.vue文件目前还找不到针对的格式化插件.
目前我遇到的问题有2个.

1.组件注释的问题.
在写组件的时候,我比较习惯写注释.在js文件里面,注释会更加的明显和方便,但是在vue文件里面注释感觉就没啥亲和力.

// .vue
<template>
<!--
 这里是注释,而且没有高亮效果.
 -->
</template>
// .js
/**
 * @name
 * @param {Number}
 * @description
 */

这样在js里面的注释就显得非常高大上.

2.dom部分格式化.
vue里面建议dom的每个属性独占一行(也是我的书写习惯),像这样:

// .vue
<p
 id="box1"
 class="classA classB"
 :class="{'active':isActive}"
></p>

但是,只要一格式化,就...

// .vue
<p id="box1" class="classA classB" :class="{'active':isActive}"></p>

而jsx里面就不会出现这种情况,只要是换行了,就算格式化也不会出现上述的问题.

文档

react项目案例总结

react项目案例总结:刚刚开始写组件的时候,感觉难度不大(跟vue差不多)。最有意思的应该是jsx语法,个人感觉,jsx的功能性确实比vue的template更强,而且可读性更高.// vue <p :id="text" :class="{'active':isActiv
推荐度:
标签: 例子 案例 项目
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top