Uncaught Error: NumberList(...): Nothing was returned from render. This usually means a return state



import React,{ Component } from 'react';

function NumberList (props) {
    console.log('props',props);
}

class Keys extends Component {
    render() {
        const numbers = [2,4,6,8];
        return (
           <div>
               <NumberList numbers={ numbers }/>
           </div>
        )
    }
}

export default Keys;

写了一段代码,突然报这鬼错误。尤其在特别累的时候,很难排查到原因何在,但还是要排查。
在遇到代码错误时,先看报错的提示,再看代码。

The above error occurred in the <NumberList> component:
    in NumberList (at keys.js:18)
    in div (at keys.js:16)
    in Keys (created by Route)
    in Route (at router.js:38)
    in div (at router.js:24)
    in Router (created by BrowserRouter)
    in BrowserRouter (at router.js:23)
    in RouterMap (at App.js:18)
    in div (at App.js:17)
    in App (at index.js:25)

这段错误,没有看出什么,那就往下看。

Uncaught Error: NumberList(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.

从这段报错中,我们是不是可以找到问题呢。
这句话的大致意思就是:

render中没有返回值,这通常意味着返回值丢失。或者为了不渲染任何内容,而返回空。

这下应该一目了然了吧!原来是我忘记return了。(是在NumberList这个组件中没有return)
看下面代码



import React,{ Component } from 'react';

function NumberList (props) {
    console.log('props',props);
    let numbers = props.numbers;
    return (
        <ul>
            { 
                numbers.map((item,index)=>{
                    return (
                        <li key={ index }>{ item }</li>
                    )
                })
            }
        </ul>
    )
}
class Keys extends Component {
    render() {
        const numbers = [2,4,6,8];
        return (
           <div>
               <NumberList numbers={ numbers }/>
           </div>
        )
    }
}

export default Keys;

这里还发现一个新问题
这里写图片描述
为什么右边一直在打印props???
正在研究中……

在Django Web框架中,视图(views)是用于处理Web请求并返回响应(HttpResponse)的主要组件。如果在编写视图函数或类视图时,返回的不是`HttpResponse`对象,而是`None`,则会导致上述错误。这通常意味着视图没有正确地返回一个HTTP响应对象。 在Django中,视图函数需要返回一个`HttpResponse`对象,或者是Django内置的其他响应类的实例,比如`JsonResponse`用于返回JSON数据,`redirect`用于进行页面重定向等。而类视图(类继承自`View`)则通过实现`get`、`post`等方法,并在这些方法中返回`HttpResponse`对象或其子类的实例。 如果你在编写视图时遇到这种情况,检查以下几点可能有助于解决问题: 1. 确保在视图函数或类视图的适当方法中,确实有一个`return`语句,并且返回的是`HttpResponse`或其子类的对象。 2. 如果你在类视图中重写了`get`或`post`方法,检查是否有`return`语句返回响应对象。 3. 如果你在类视图中使用了`dispatch`方法,请确保你调用了`super().dispatch(*args, **kwargs)`并在需要的地方返回了相应的响应。 如果你在使用类视图,并且想要返回一个简单的`HttpResponse`,一个基本的类视图示例如下: ```python from django.http import HttpResponse from django.views import View class MyView(View): def get(self, request, *args, **kwargs): return HttpResponse("这里是你想要返回的响应内容") ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值