如何将API从API传递给Action(ReactJS)

时间:2017-01-23 12:05:36

标签: javascript reactjs

获取API文件

import { apiUrl } from '../config'
const baseUri = apiUrl
const uri = {
outline : '/course/income/outline'
 }
const getURI = (key) => baseUri + uri[key]

module.exports = { apiMiddleware, get, post, put, ...{ delete: del }, uri, getURI }

尝试将此传递给我的axios网址

import Api from '../middleware/api'
    export function IncomeList () {

        return dispatch => {

            return (

                axios.post(Api.getURI(outline),{}, {
          headers: { 'X-Authenticated-Userid': '15000500000@1' }
         }).then(function (response) {


                    console.log(response.data);
                    dispatch(receiveData(response.data.body));

                })
            .catch((error) => {
                    console.log(error);
                })
                )
        }
    }

但我收到错误未捕获的ReferenceError:未定义大纲。如何传递正确的URL?

1 个答案:

答案 0 :(得分:1)

将字符串文字传递给getURI方法:

Api.getURI('outline')

调用Api.getURI(outline)使解释器查找outline变量,这在当前作用域中是未定义的(因此是ReferenceError)。

Protip:像ESLint一样,linter会及早发现这个错误。