React本机Wordpress API不提取帖子

时间:2018-08-28 19:44:03

标签: wordpress react-native fetch-api

你好,我最近刚开始学习本机反应。 我现在正尝试使用以下具有此确切api地址的代码从wordpress api获取数据,但没有加载任何内容。

    import React from 'react';
    import { FlatList, ActivityIndicator, Text, View  } from 'react-native';

    export default class FetchExample extends React.Component {

    constructor() {
    super();
    this.state = {
      posts: []
    }
    }
    componentDidMount() {
    let dataURL = "https://click9ja.com/wp-json/wp/v2/posts";
    fetch(dataURL)
      .then(response => response.json())
      .then(response => {
        this.setState({
          posts: response
        })
      })
  }
    render() {
    let posts = this.state.posts.map((post, index) => {
      return
      <View key={index}>
      <Text>Title: {post.title.rendered}</Text>
      </View>
    });
   return (
      <View>
        <Text>List Of Posts</Text>
        <Text>{posts}</Text>
      </View>
     )
  }
}

任何建议将不胜感激。

2 个答案:

答案 0 :(得分:1)

首先将返回值括在括号中

let posts = this.state.posts.map((post, index) => {
      return (
      <View key={index}>
      <Text>Title: {post.title.rendered}</Text>
      </View> 
     );
    });

第二,您不能在文本标签中呈现变量。应该是这样的

<View>{varaible}</View>

因此,<Text>{posts}</Text>应该只是{post}

答案 1 :(得分:0)

当请求服务器时,提取将默认使用GET方法。要将其设置为POST方法或其他方法,则需要在提取中添加额外的参数 您的情况将是

fetch('https://click9ja.com/wp-json/wp/v2/posts', {
  method: 'POST',
  headers: {
    Accept: 'application/json',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    firstParam: 'yourValue',
    secondParam: 'yourOtherValue',
  }),
});

某些API需要标头和正文,请务必先阅读API文档以了解目的。

有关在React native中获取的更多信息,您可以访问它here 有关什么是API的更多信息,请访问here

希望获得帮助。