【问题总结(18)】Uncaught (in promise) TypeError: Object(...) is not a function 和 unreachable code

子组件拿父组件接口数据

从后端拿到数据 作为公共数据 子组件如何拿到后端的数据

vue父组件怎么给子组件传后台获取的值

const group = [‘cat’,‘dog’]
mock.js假数据
手动写一个方法拿到数据
Mock.mock(//api/v1/account/id/, ‘getGroup’,getGroup )

map方法就是 键值对 的形式 取到 customRender渲染出来

group联动
第一种 分别取 在change事件
在change事件里 赋新值 调用后台数据方法 const arr = this.getCatList,选中之后再选择另一个数组
声明一个新的数组,再往里面填充

报错

  1. unreachable code

下面展示一些 内联代码片

// A code block
var foo = 'bar';
// An highlighted block
async loadData() {
........
return accountList
const data = await getAll() //报错

解决办法就是把你把要调用的方法写到return前面就好了

2.Uncaught (in promise) TypeError: Object(…) is not a function
原因
导入api接口方法时 api没有对应的方法

// mock/services/account.js
function getGroups (options) {
  const data = getQueryParameters(options)
  let res = groups
  Object.keys(data).forEach(key => {
    res = res.filter(groups => groups[key] === data[key])
  })
  return builder(res)
}

Mock.mock(/\/api\/v1\/groups/, 'get', getGroups)

补上 api 接口方法

//src/api/account.js
export function getGroups (parameter) {
  return request({
    url:'/api/v1/groups',
    method:'get',
    params:parameter
  })
}

忘记写api了
// 导入使用导出的常量 从api里面导入
import { getAll, destroy, getGroups } from '@/api/account'

注意
除此之外 还有一个地方导入接口方法不当也会报此类型错误
import { xx } from … 与 import xx from …
与 api接口文件里导出方式有关
exportexport default
两者都能做的
导出常量、函数、文件、模块等
可在别的文件import 导入使用导出的(常量、函数、文件、模块)
两者不同的地方
export可以有多个; export default只能有一个
export default为模块指定默认输出,不用知道模块变量名
重点来了!export导出的,你若要import必须加上{}; export default不需要、不能加
————————————————
版权声明:本文为CSDN博主「变优秀的小白」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44425934/article/details/112846315
参考: 踩坑: Uncaught (in promise) TypeError: Object(…) is not a function at eval.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这是一个 JavaScript 的错误,表示在执行一个 promise 时,抛出了一个错误,并且该错误类型为 "TypeError",具体错误信息为 "object(...) 不是一个函数"。这通常意味着在调用一个对象时,该对象不是一个函数。 ### 回答2: 这个错误通常出现在使用Promise时,调用resolve或reject方法时传入的参数不是函数。Promise是一种处理异步操作的方式,在创建Promise时,我们需要传入一个executor函数,该函数接受两个参数resolve和reject,当异步操作成功或失败时,分别调用resolve和reject方法。如果我们在调用resolve或reject时,传入的不是一个函数,而是一个对象或其他类型的参数,就会报出“uncaught (in promise) typeerror: object(...) is not a function”的错误。 这个错误还可能因为以下原因出现: 1. 在Promise链式调用中调用了一个不是函数的方法或变量,导致报错。 2. 在调用then或catch方法时,没有传入函数,而是传入了其他类型的参数。 解决这个错误的方法是检查异步操作的resolve和reject方法,确保它们接受的参数是函数,如果不是函数,就需要修改代码,传入正确的参数类型。同时也需要确保在Promise链式调用中,调用的方法和变量都是函数类型的。如果出现第二种情况,那么就需要传入一个函数作为参数。在使用Promise时,还需要仔细检查代码,确保Promise使用的正确性,避免出现这种类型的错误。 ### 回答3: 这个错误信息通常出现在JavaScript使用Promise的过程中。当一个Promise对象通过then或catch方法去调用它的回调函数时,如果回调函数不是一个函数类型,就会抛出这个错误。在这种情况下,“object”指的是Promise返回的对象,而“...”是指传递给Promise返回函数的参数。当Promise返回一个对象,并且尝试充当一个函数时,它将无法执行,并且会抛出一个TypeError。这个错误也可能发生在使用React等JavaScript库中。 解决这个错误的方法有很多种。首先,您需要仔细检查Promise的代码,确保回调函数是一个函数类型。如果您使用的是第三方库,那么您需要检查函数签名是否正确,即确保您传递给该函数的参数与API文档中所述的一致。如果您的代码包含自定义Promise实现,则可能有错误或不规范的返回值,您需要确保Promise对象正确实现。 除了检查代码之外,另一种解决方法是升级您的JavaScript运行环境。如果您正在使用过时的浏览器或node.js版本,则可能会出现此错误。请尝试升级到最新版本的浏览器或node.js运行时,以确保您的代码与最新的JavaScript规范兼容。 总之,当您看到“uncaught (in promise) typeerror: object(...) is not a function”时,最好的解决方法是检查代码和运行环境,确保您的JavaScript代码符合规范,并且可以与最新的JavaScript规范兼容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值