我正在尝试从无头CMS(Sanity.io)返回一些数据,但是我的React一直遇到错误。我已遵循此示例,但是现在出现错误TypeError: Cannot read property 'map' of undefined
我的密码
import * as React from "react";
import sanityClient from "@sanity/client";
import { Container, Row } from "reactstrap";
const client = sanityClient({
projectId: "<redacted>",
dataset: "<redacted>",
useCdn: true
});
let dataHenter;
const query = `*[_type == "land"]`;
export default class CountryList extends React.Component {
constructor(props) {
super(props);
this.state = {
country: []
};
}
static async getInitialProps() {
return {
country: await client.fetch(query)
};
}
render() {
const { country } = this.props;
return (
<Container>
<div className="country">
<ul className="list">
{country.map(country => (
<li key={country._id}>
<Row>
<a>
{country.image}
<h3>{country.name}</h3>
</a>
</Row>
</li>
))}
</ul>
</div>
</Container>
);
}
}
关于我在做什么错的任何想法吗?
渲染组件时,可以将country定义为未定义或为null。确保它在初始渲染时是数组:
const { country } = this.props || { country: [] };
或者,
const { country } = this.props;
您可以将地图用于这样的国家/地区:
{country && country.length && country.map(country => (
这样可以确保仅在有国家/地区时才运行地图。
问题内容: 我正在按照本教程进行操作,并且在 将值从一个组件的状态传递到另一个组件 时遇到了一个问题。 当执行组件中的功能时,将引发错误。 什么会导致的是从路过的时候到? 问题答案: 首先,设置更安全的初始数据: 并确保您的ajax数据。 如果您按照上面的两个指示(如“ 演示”)操作,它应该可以工作。 更新:您可以仅使用条件语句包装.map块。
我是新来的node.js.我正在尝试创建一个注册页面,并使用mysql将输入的值保存在数据库中。 我可以通过在请求头上传递参数来实现这一点。但是,在请求头中传递参数始终不是一个好主意。所以尝试在请求体上传递参数。 我使用邮差测试我的node.js服务。 下面是我的演示应用程序的github链接 https://github.com/debasish283/node_gulp 我还需要做什么来传递请
问题内容: 我是ReactJS的新手,遇到一些问题。 我还了解了语法,它说以下代码具有相同的含义。 1。 2。 但是,第一种方法引发此错误 问题答案: YTSearch({key: API_KEY, term: ‘nba’}, function(videos) { this.setState({ videos }); }); 引发错误,因为在此回调内部并未引用函数本身的上下文,因此此处未定义。 在
我试图在Springboot应用程序中使用logback-spring.xml创建日志记录功能,但是无法读取logback-spring.xml文件中的属性值(例如:log.dest.path)。 我通过@PropertySource基于概要文件动态加载不同环境(开发、阶段、生产)的属性文件(YAML)。概要分析工作正常,并且加载了正确的YAML文件(例如:- application.dev.ym
问题内容: 您好,我正在尝试将React-Router与Firebase配合使用。但这给了我这个错误。 无法读取null的属性“ props” 这正是代码,我正在使用我的react-router 向下代码在组件上作为loginpanel组件。 我的react路由器在main.jsx上声明,我的react-router看起来像这样。 问题答案: 在回调中,指针不再指向您的React组件。有很多方法可
TypeError:无法读取应用程序上未定义的属性“collection”。在图层上发布(/home/niko/Desktop/opa/app.js:17:38)。在route的下一个(/home/niko/Desktop/opa/node_modules/express/lib/router/layer.js:95:5)中处理[as handle_request](/home/niko/Desk