tus*_*ath 45 javascript typeerror promise
在Javascript中,何时抛出此错误?
index.js
/**
* Created by tushar.mathur on 24/12/15.
*/
'use strict'
const _ = require('lodash')
const Rx = require('rx')
const createDataStore = require('./src/createDataStore')
const fetch = x => Rx.Observable.fromPromise(window.fetch(x))
const parseJSON = x => Rx.Observable.fromPromise(x.json()) // Line: 11 (Where the exception is thrown)
var create = _.partial(createDataStore, fetch, parseJSON)
module.exports = {
create,
// Alias for legacy purposes
createDataStore: create,
createFetchStore: create
}
Run Code Online (Sandbox Code Playgroud)
这是本机承诺错误吗?这意味着什么?谷歌显示没有找到结果.
gkk*_*sch 68
我认为这意味着已经通过使用.json().text()等来读取正文......当你运行x.json()时,它会获取响应的主体并将其读入JSON.如果您尝试再次运行x.json(),它将为您提供该错误.所以,你可以只使用一个这些方法一次.所以我在你的代码中假设它正在使用一个Body方法再次读取相同响应的主体.
我认为这就是为什么他们提供这种Body.bodyUsed
方法.所以你可以看看它是否已被阅读过.
此错误表示您已经多次解决了承诺(在这种情况下,您使用Body.json()
).
你可以从我下面的ref我检查响应体方法,你需要一个标志来检查是否已经解决了promise:在这种情况下,你可以使用 Body.bodyUsed
参考:https://developer.mozilla.org/en-US/docs/Web/API/Response
HTH