记一个 react 程序报的错误:Expected an assignment or function call and instead saw an expression,直译是:需要是一个函数调用或赋值,不过却是一个表达式。

  这个错误让我摸不着头脑,反复看代码也没发现哪出问题了,最后在看到这篇文章的时候才发现是哪错了(箭头函数里的括号问题)。这里记录一下来加深印象,也给出现同样问题的朋友们提供一个案例。

  其实主要也是自己基础不扎实的问题

  在我对箭头函数的印象中:若箭头函数的函数体中只有一条语句,那么此时可以不用加(可选)括号 {} / (),且默认会加上 return,而若有多行的话,需要使用 {} 包裹且需要加上 return 关键字。

  不过要注意的是,如果箭头函数的函数体中只有一条语句的,且我们选择加上了括号 {} ,那么需要加上 return 关键字,其实是加上了 {} 的箭头函数体都必须加上 return,否则默认会返回 undefined

  我程序中出现的错误就是一条语句的箭头函数中加上了 {} 却没加 return

也就是:

// 注意,这边错了!
children: children.map(child => {typeof child === 'object'? child: createTextElement(child)
})

正确的写法应该是:

children: children.map(child => {retrun typeof child === 'object'? child: createTextElement(child);
})// 或者直接不加括号,或者加的是 ()
children.map(child => typeof child === 'object'? child: createTextElement(child);
)

React | Expected an assignment or function call and instead saw.....相关推荐

  1. Invalid value for option“watch“:expected anObject,but got Function.

    在运行时报 选项"watch"的值无效:应为对象,但得到函数 这样一个问题. 项目场景 watch() {(val, oldVal) => {if (val) {this.a ...

  2. jslint4java_JSLint检测javascript的错误提示

    "Missing semicolon." : "缺少分号.", "Use the function form of \"use strict ...

  3. JSLint检测Javascript语法规范

    前端javascript代码编写中,有一个不错的工具叫JSLint,可以检查代码规范化,压缩JS,CSS等,但是他的语法规范检查个人觉得太"苛刻"了,会提示各种各样的问题修改建议, ...

  4. [TypeScript] vs code TSLint常见错误解决方案

    TSLint是一个Typescrip{过滤}t验证工具,用于检测代码. TSLint: comment must start with a space (comment-format) 注释必须从一个 ...

  5. JSLint报错翻译

    "Missing semicolon." : "缺少分号.", "Use the function form of \"use strict ...

  6. ECMAScript6语法检查规范错误信息说明

    项目中使用ECMAScript6的时候经查会使用语法检查,下面是常见错误信息的汇总: 1 "Missing semicolon." : "缺少分号.", 2 & ...

  7. React源码分析(二)= Reac初次渲染分析

    文章目录 1. render阶段 legacyRenderSubtreeIntoContainer 1.1. legacyCreateRootFromDOMContainer 1.1.1. React ...

  8. React 学习总结

    React 入门实例教程 http://www.ruanyifeng.com/blog/2015/03/react.html 现在最热门的前端框架,毫无疑问是 React . 上周,基于 React ...

  9. react 遍历对象_React 源码系列 | React Children 详解

    本文基于 React V16.8.6,本文代码地址 测试代码 源码讲解 React 中一个元素可能有 0 个.1 个或者多个直接子元素,React 导出的 Children 中包含 5 个处理子元素的 ...

最新文章

  1. 什么是CNN卷积神经网络的感受野及动画演示
  2. 智能车竞赛技术报告 | 双车接力组 - 沈阳航空航天大学 - 精神小车成双 - 双轮车
  3. python怎么导入包-如何理解Python中包的引入
  4. Python-sys.argv[]用法
  5. 产品入门首月成长报告 | PMcaff-干货
  6. ITK:创建具有相关类ID的样本列表
  7. 分享到JavaScript实现
  8. Windows 2008之Hyper-V安装攻略
  9. php基础教程 第八步循环补充
  10. VS2008创建dll,并使用dll
  11. 企业如何降低应用安全风险?
  12. JS中height、clientHeight、scrollHeight、offsetHeight区别
  13. 高一数学计算机教材,高中数学必修1教材分析
  14. 怎么做手机App测试?app测试详细流程和方法介绍
  15. Zblog博客怎么实现微博登陆?
  16. OSChina 周三乱弹 —— 有种思念叫忘穿秋裤
  17. 谷歌浏览器离线安装crx插件方法
  18. 通过Mixamo生成人物动画并导入Unity实现资源可用的方法
  19. 【微信小程序-初级实战】商品/表单编辑
  20. sql 修改表的字段属性

热门文章

  1. HDU 4358 树状数组+思路
  2. [转]linux下fms2流媒体服务器搭建之五-----flv播放器制作篇
  3. 刚刚学Asp.Net的人要告诉的几件事
  4. 技术总监,被判刑12年!因公司未兑现股权,愤怒植入代码,牟利333万
  5. 2 万字长文深入详解 Kafka,从源码到架构全部讲透
  6. 网友提问:精通 Spring 全家桶,被 15 家公司拒绝,大专程序员出路在哪?
  7. Redis亿级数据过滤和布隆过滤器
  8. 大龄程序员刚迈过了 35 岁这个“坎儿”,和大家说点儿心里话
  9. 45本互联网圣经级别书籍!包邮送到家!一书在手,天下我有!
  10. 微服务四大网关性能对比