首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我收到对象(...)当我从api使用useGetCryptoNewsQuery并尝试console.log(cryptoNews)时,不是函数

根据提供的问答内容,我将尝试给出完善且全面的答案。

问题:我收到对象(...)当我从api使用useGetCryptoNewsQuery并尝试console.log(cryptoNews)时,不是函数。

回答: 根据提供的信息,你收到的对象不是一个函数,这可能是因为你在使用useGetCryptoNewsQuery时出现了一些问题。useGetCryptoNewsQuery是一个自定义的钩子函数,用于从API获取加密货币新闻数据。当你尝试使用console.log(cryptoNews)时,你期望得到的是一个函数,但实际上得到的是一个对象。

要解决这个问题,你可以检查以下几个方面:

  1. API调用是否正确:确保你正确地调用了useGetCryptoNewsQuery函数,并传入了正确的参数。例如,你可能需要传入一些参数来指定你想要获取的加密货币新闻的数量、排序方式等。
  2. 钩子函数返回的数据类型:查看useGetCryptoNewsQuery函数的文档或源代码,确认它返回的是一个对象而不是一个函数。如果文档或源代码中明确指出返回的是一个对象,那么你得到的结果是符合预期的。
  3. 对象的属性和方法:如果你得到的确实是一个对象,那么你可以尝试使用console.log(Object.keys(cryptoNews))来查看该对象的属性。这将打印出该对象的所有属性名称,以便你进一步了解它的结构和可用的方法。

总结: 根据提供的信息,你收到的对象不是一个函数,可能是因为你在使用useGetCryptoNewsQuery时出现了一些问题。请检查API调用是否正确,并确认useGetCryptoNewsQuery返回的是一个对象而不是一个函数。如果是一个对象,你可以使用console.log(Object.keys(cryptoNews))来查看其属性和方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

怎么写一个JavaScript Promise

在codepen上编写了一个示例函数,用于模拟你可能使用API。它提供了两种访问结果的选项。一,你可以提供回调功能,在其中访问用户或提示错误。...我们打印出延迟时间和温度,以便我们知道这个功能需多长时间以及我们期望在完成看到的结果。 运行函数打印结果。...因此,当我们运行该函数,setTimeout是异步的。setTimeout中的部分代码移出主线程进入等待区域。....catch,当我们的promise拒绝,它将被调用,返回我们传递给reject的任何信息。 最有可能的是,你将更多的使用promise,而不是创建它们。...使用promise,我们使用.then已经解决的promise中获取信息,然后使用.catch拒绝的promise中获取信息。 你可能更多地使用(消费)promises,而不是编写它们。

37930

【译】怎么写一个JavaScript Promise

在codepen上编写了一个示例函数,用于模拟你可能使用API。它提供了两种访问结果的选项。一,你可以提供回调功能,在其中访问用户或提示错误。...我们打印出延迟时间和温度,以便我们知道这个功能需多长时间以及我们期望在完成看到的结果。 运行函数打印结果。...因此,当我们运行该函数,setTimeout是异步的。setTimeout中的部分代码移出主线程进入等待区域。....catch,当我们的promise拒绝,它将被调用,返回我们传递给reject的任何信息。 最有可能的是,你将更多的使用promise,而不是创建它们。...使用promise,我们使用.then已经解决的promise中获取信息,然后使用.catch拒绝的promise中获取信息。 你可能更多地使用(消费)promises,而不是编写它们。

71720
  • React 入门学习(十七)-- React 扩展

    setState 不同的是,我们传递的第一个参数 updater 可以接收到2个参数 state 和 props 我们尝试一下 add = () => { this.setState((state...Hooks useState hooks 解决了函数式组件和类式组件的差异,让函数式组件拥有了类式组件所拥有的 state ,同时新增了一些 API ,让函数式组件,变得更加的灵活 首先我们需要明确一点...('被调用了');}) 由于函数的特性,我们可以在函数中随意的编写函数,这里我们调用了 useEffect 函数,这个函数有多个功能 当我们像上面代码那样使用时,它相当于 componentDidUpdata...Context 仅适用于类式组件 当我们想要给子类的子类传递数据,前面我们讲过了 redux 的做法,这里介绍的 Context 觉得也类似于 Redux 首先我们需要引入一个 MyContext...,Consumer} = MyContext; 然后通过 value 取值即可 function C() { return ( 是C组件,A接收到的数据 <

    83230

    React 入门学习(十七)-- React 扩展

    setState 不同的是,我们传递的第一个参数 updater 可以接收到2个参数 state 和 props 我们尝试一下 add = () => { this.setState((state...Hooks useState hooks 解决了函数式组件和类式组件的差异,让函数式组件拥有了类式组件所拥有的 state ,同时新增了一些 API ,让函数式组件,变得更加的灵活 首先我们需要明确一点...('被调用了');}) 由于函数的特性,我们可以在函数中随意的编写函数,这里我们调用了 useEffect 函数,这个函数有多个功能 当我们像上面代码那样使用时,它相当于 componentDidUpdata...Context 仅适用于类式组件 当我们想要给子类的子类传递数据,前面我们讲过了 redux 的做法,这里介绍的 Context 觉得也类似于 Redux 首先我们需要引入一个 MyContext...,Consumer} = MyContext; 然后通过 value 取值即可 function C() { return ( 是C组件,A接收到的数据 <

    69630

    Vue2.5笔记:Vue的实例与生命周期

    Vue 的实例创建到使用以及销毁的过程中会有多个生命周期钩子,这些钩子在我们整个的实例过程中起到了非常重要,而且有了这些钩子我们可以很好的去控制我们的整个过程的逻辑。...如果你以为仅仅是这么简单那你就太年轻了,我们也就没有使用 Vue 的必要了,当我们创建一个实例,Vue 会把视图与数据进行连接,当我们修改数据,视图会自动更新。 ?...有一点值得我们注意的是,我们在使用 Vue 实例,需要关注下 this,千万不要在含有 this 的函数使用箭头函数,因为箭头函数是没有绑定 this 的,所以会出现问题。...此钩子会收到三个参数:错误对象、发生错误的组件实例以及一个包含错误来源信息的字符串。此钩子可以返回 false 以阻止该错误继续向上传播。...我们可以看到从实例开始创建到渲染挂载到 DOM 结束后,会执行的钩子函数,下面我们来尝试进行数据的更新与销毁实例看看钩子是怎么执行的。 ?

    56020

    『手撕Vue-CLI』完善提示信息

    然而,虽然项目已复制安装依赖,但其提示信息并不够友好,于是试着去运行了一下vue create,发现其提示信息是这样的: 于是决定完善提示信息,也借此机会完善一下项目的代码,变量命名等。...当我执行 create 命令,官方会告诉我们所创建项目最终的路径,那我也来完善一下。...Received an instance of Promise 出现这个错误的原因是 ncp 模块在处理路径收到一个 Promise 对象,而不是一个字符串路径,就一下定位到了这个问题,发现是因为异步操作没有正确处理...,导致传递给 ncp 的参数不是预期的字符串类型,downloadTemplate 函数返回的是一个 Promise 对象,所以我需要在调用 downloadTemplate 函数使用 await...这个问题是由于在尝试 https://registry.npm.taobao.org 下载依赖包,证书过期导致无法建立安全连接,所导致的。

    5511

    通过实例,理解 Vue3 的响应式设计

    在本文中,我们将研究 Vue 中的响应式设计,它是如何工作的,以及我们如何使用新创建的方法和函数来创建响应式变量。 默认情况下,JavaScript 不是响应式的。...当我使用 setup 选项作为 Composition API 的入口点,数据对象、计算属性和方法是不可访问的,因为在执行 setup 组件实例尚未创建。...toRefs 当我使用 Composition API ,setup 函数接受两个参数:props 和 context。...从上面的示例中,我们可以看到,当我使用响应式 cars 对象或 NumberOfHondas 更新 Honda ,两个实例中的值都会更新。...当我们想要对特定组件的 prop 执行额外操作,这会派上用场。 写在最后 在本文中,我们使用 Vue 3 中新引入的一些方法和函数来了解 Vue 中的响应式设计师如何工作的。

    1.6K30

    🧩 Vue 深入组件开发☞#依赖注入#

    本次演示环境:Vue3、组合式 API、TypeScript 学习内容: 依赖注入的使用方式; 依赖注入的类型约束; 避免响应式数据被随意更改; Symbol对象的应用场景。...你可以看到下面这个示意图,当我们的组件出现的层级大于 2 以后,也就是我们常说的爷孙组件之间的数据传递,但是在中间的组件也需要提供支持才能满足数据的顺利传输,当中间的组件层级增多就需要维护更多的与其不是特别关注的内容.../script> 注:当我们在根组件使用依赖注入时就可以在任意组件接收到这个数据了...,在开发 Vue 插件的时候你可以尝试使用 ~ 使用 Inject 输入数据 key: 注入一个 key: 在 DeepChild 组件中通过 inject() 函数来传入指定数据的 key 来得到...在这个场景下我们就需要限制这个响应式数据在提供给后代组件仅为只读状态,当你尝试在后代组件修改时 Vue 会发出警告:Set operation on key "value" failed: target

    53310

    重学JavaScript Promise API

    Promise构造函数实例化一个新的Promise对象传递给它一个回调函数。...我们首先使用Promise构造函数创建一个新的Promise对象。...该构造函数用于封装尚未支持Promise的函数API,例如上面的XMLHttpRequest对象。传递给Promise构造函数的回调包含用于远程服务获取数据的异步代码。...当远程服务器收到成功的响应时,会传递给resolve方法。如果发生任何错误(无论是在服务器上还是在网络层),reject方法将调用一个Error对象。...then方法 当我们实例化一个Promise对象,我们将得到一个未来可用数据的代理。在我们的例子中,我们期待远程服务返回一些数据。那么,我们如何知道数据何时可用呢?

    14720

    RxJS & React-Observables 硬核入门指南

    : () => console.log('completed'); }); 执行 Observable 当Observable被订阅,我们传递给新Observable构造函数的subscribe函数就会被执行...这是因为第二个观察者收到了一个可观察对象的副本,它的订阅函数被再次调用了。这说明了可观察对象的单播行为。 Subjects Subject是可观察对象的一种特殊类型。...开始打印,而不是1开始。...但我不讨厌redux- tank,喜欢它,每天都在使用它! 练习1:调用API 用例:调用API来获取文章的注释。当API调用正在进行时显示加载器,并处理API错误。...当我们开始使用全局变量,我们的action creator就不再是纯函数了。对使用全局变量的action creator进行单元测试也变得很困难。

    6.9K50

    JavaScript中的类有什么问题呢?

    上已经收录,文章的已分类,也整理了很多的文档,和教程资料。 并不是说 JS 的类有问题,但是如果你使用该语言已有一段时间,特别是使用过ES5,那么你可能就知道了原型继承到当前类模型的演变。...这就是他们真正做的,在我们已经拥有的原型继承之上添加了一些构成,决定将其称为类,这反过来又让开发人员认为他们正在处理一种面向对象的语言,而实际上它们并不是。...因为尽管在表面上,它们看起来是非常面向对象的,但是如果我们试图做一些超出它们可能的事情,比如定义一个类扩展两个类(目前不可能的事情),我们需要使用下面的代码 // 辅助函数 function applyMixins...console.log("B") } } class C extends A, B { } 在上面的示例中,关键部分应该是applyMixins函数。...抽象类 每当我尝试的代码进行完整的OOP操作肯定会错过JS中的抽象类。 抽象类是定义和实现方法的类,但永远不会实例化。 这是一种可以扩展但从未直接使用的常见行为的分组方式。

    1.4K10

    Rxjs 响应式编程-第四章 构建完整的Web应用程序

    我们将转换文档对象模型(DOM)使用Node.js服务器中的WebSockets进行客户端 - 服务器通信。...这段代码已经有一个潜在的错误:它可以在DOM准备好之前执行,每当我尝试在代码中使用DOM元素就会抛出错误。...然后我们将每个地震对象映射到makeRow,将其转换为填充的HTML tr元素。 最后,在订阅中,我们将每个发出的行追加到我们的table中。 每当我收到地震数据,这应该得到一个数据稠密的表格。...每次收到新地震的消息,都会使用新坐标更新twit流。...为此,您可以使用merge和mergeAll的帮助,使用distinct与选择器函数来避免重复。 每当用户点击推文,将地图置于相关地震中心。

    3.6K10

    asyncawait初学者指南

    「异步函数表达式」 当我们创建一个函数,并将其赋值给一个变量,这便是「函数表达式」。该函数是匿名的,这意味着它没有名字。...不是说我们应该对所有的事情都使用async/await(该语法确实有其缺点,我们将在讨论错误处理看到),但我们应该意识到这是可能的。...并行运行异步命令 当我使用await关键字来等待一个异步操作完成,JavaScript解释器会相应地暂停执行。虽然这很方便,但这可能并不总是我们想要的。...这是ES2022中引入的语言,14.8版开始在Node中可用。 当我们在文章开头运行我们的代码,我们已经被这个东西所要解决的问题给缠住了。还记得这个错误吗?...函数之外使用await,就会发生这种情况。

    29620

    【超详细】Zod 入门教程

    ,因为这个类型代表的是 Zod 对象的类型而不是 StarWarsPeopleResults 类型作业更新 logStarWarsPeopleResults 函数去提取对象类型解决方案更新这个打印函数使用...作业修改 Form 使得当 keywords 字段为空的时候,会有一个默认值(空数组)解决方案Zod 的 default schema 函数,允许当某个字段没有传参提供一个默认值在这个例子中,我们将会使用...StarWarsPeopleResults , 其中 results 字段是一个包含 StarWarsPerson schema 的数组当我 API 获取 StarWarsPerson 的 name....object() 中的 name 字段,我们可以获取 person 参数,然后转换它添加到一个新的属性中const StarWarsPerson = z .object({ name:...所有这些都发生在 StarWarsPerson 这个作用域中,而不是在 fetch 函数内部或其他地方。另一个例子Zod 的转换 API 适用于它的任何原始类型。

    74010

    惊艳!可视化的 js:动态图演示 Promises & AsyncAwait 的过程!

    让我们尝试看看当我们调用 resolve 或 reject 方法得到的日志。 在的例子中,把 resolve 方法叫做 res,把 reject 方法叫做 rej。 太好了!...当我们调用 resolve 方法,promise 的状态是 fulfilled。 当我们调用 reject 方法,promise 的状态是 rejected。...好了,现在我们知道如何更好控制那个模糊的 Promise 对象。但是他被用来做什么呢? 在前面的介绍章节,展示了一个获得图片、压缩图片、为图片应用过滤器保存它的例子!...我们现在能够创建隐式地返回一个对象的异步函数,而不是显式地使用 Promise 对象!这意味着我们不再需要写任何 Promise 对象了。...这样,我们就可以暂停一个异步函数吗?很好,但这到底是什么意思? 当我们运行下面的代码块让我们看下发生了什么: 额,这里发生了什么呢? 首先,JavaScript 引擎遇到了 console.log

    2.1K10

    web前端如何准备面试工作??

    ] [ojwj73qddo.png] 还一个没有接触过,就不说了,逃 都有一个开始到结束的过程。...比如在 p 元素里面包裹 div 元素,最终渲染的并不是父子关系,而是兄弟关系。 当解析到脚本元素,浏览器就会停止 HTML 构建 DOM,开始执行 JavaScript 代码。...window 对象是获取所有其他全局对象、全局变量(甚至包含用户定义对象)和浏览器 API 的访问途径。全局 window 对象最重要的属性是 document,它代表了当前页面的 DOM。...无论何时在哪调用,只和声明的地方有关系(定义函数继承上下文) 闭包:允许函数访问操作函数外部的变量,windows 就是一个最大的闭包(回调函数是另一种常见的使用闭包的情景) promise 模拟一个请求...再使用服务端的返回结果” resolve(JSON.parse(this.request))//“尝试解析JSON字符串,倘若解析成功则执行resolve,并将解析后的对象作为参数传入

    61810

    一文彻底搞懂Events模块

    你订阅了的公众号 这个微信公号作者是发布者,您这些微信用户是订阅者「发送一篇文章的时候,关注了【程序员成长指北】的订阅者们都可以收到文章。...EventEs 的一些常用官方API源码与发布/订阅模式对比学习 本模块的官方 Api 讲解不是直接带大家学习文档,而是 通过 对比发布/订阅设计模式自己手写一个版本 Events 的核心代码来学习记住...listener2 listener3 end 是异步中的输出 EventEmitter触发事件的时候,各 监听函数的调用是同步的(注意:监听函数的调用是同步的,'end'的输出在最后),但是并不是说监听函数里不能包含异步的代码...流程的一个说明:本图中详细绘制了 异步调用开始--->异步调用请求封装--->请求对象传入I/O线程池完成I/O操作--->将完成的I/O结果交给I/O观察者--->I/O观察者中取出回调函数和结果调用执行...当 error 被触发,EventEmitter 规定如果没有响 应的监听器,Node.js 会把它当作异常,退出程序输出错误信息。

    86831

    一文彻底搞懂Events模块

    你订阅了的公众号 这个微信公号作者是发布者,您这些微信用户是订阅者「发送一篇文章的时候,关注了【程序员成长指北】的订阅者们都可以收到文章。...EventEs 的一些常用官方API源码与发布/订阅模式对比学习 本模块的官方 Api 讲解不是直接带大家学习文档,而是 通过 对比发布/订阅设计模式自己手写一个版本 Events 的核心代码来学习记住...listener2 listener3 end 是异步中的输出 EventEmitter触发事件的时候,各 监听函数的调用是同步的(注意:监听函数的调用是同步的,'end'的输出在最后),但是并不是说监听函数里不能包含异步的代码...流程的一个说明:本图中详细绘制了 异步调用开始--->异步调用请求封装--->请求对象传入I/O线程池完成I/O操作--->将完成的I/O结果交给I/O观察者--->I/O观察者中取出回调函数和结果调用执行...当 error 被触发,EventEmitter 规定如果没有响 应的监听器,Node.js 会把它当作异常,退出程序输出错误信息。

    94420

    Fetch还是Axios——哪个更适合HTTP请求?

    但是现在,开发人员通常会决定在 fetch() API 和 Axios 之间进行选择。 在本文中,想比较这两种方法,简要介绍一下基本知识和语法。...JSON 如前所述,当我们在使用 .fetch() 方法的时候,需要对响应数据使用某种方法,当我们在发送带有请求的 body ,需要对数据进行字符串化。...每次我们 .fetch() 方法中得到响应时,我们需要检查状态是否成功,因为即使不是,我们也会得到响应。在 .fetch() 的情况下,只有当请求没有完成,promise 才会被解决。...(data)) .catch((error) => console.log(error)); 在这段代码中,已经在承诺对象中检查了代码的状态,如果响应有状态 ok,那么就可以处理使用 .json...HTTP 拦截 当我们需要检查或改变我们应用程序到服务器的 HTTP 请求,或者以其他方式,例如,为了验证,HTTP 拦截可能是重要的。

    4.8K20
    领券