慧羽网络 2023-04-18 17:22 采纳率: 100%
浏览 134
已结题

uniapp封装request方法调用报错:TypeError: this.$request is not a function

一、遇到问题:

uniapp封装request方法调用报错:TypeError: this.$request is not a function

二、代码片段

1、request.js

const BASE_URL = 'http://127.0.0.1:8000'
const header = {
    Authorization: uni.getStorageSync('token')
}
export const request = (
    url = '',
    method = 'GET',
    data = {},
) => {
    return new Promise((resolve, reject) => {
        uni.request({
            url: BASE_URL + url,
            header: header,
            method: method,
            data: data,
            dataType: 'JSON'
        }).then((response) => {
            setTimeout(function() {
                uni.hideLoading()
            }, 200)
            let [error, res] = response
            resolve(res.data)
        }).catch(error => {
            let [err, res] = error
            reject(err)
        })
    })
}

2、main.js

import App from './App'

// #ifndef VUE3
import Vue from 'vue'

import {
    request
} from './utils/request.js' // request请求接口

// 定义全局
Vue.prototype.$request = request

Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
    ...App
})
app.$mount()
// #endif

// #ifdef VUE3
import {
    createSSRApp
} from 'vue'
export function createApp() {
    const app = createSSRApp(App)
    return {
        app
    }
}
// #endif

3、页面使用

<template>
    <view>
        <button @click="getSms">打开弹窗</button>
    </view>
</template>

<script>
    export default {
        data() {
            return {

            }
        },
        methods: {
            getSms() {
                this.$request('/sendSms', 'POST', {}).then(res => {
                    console.log(res)
                })
            }
        }
    }
</script>

<style lang="scss" scoped>

</style>

三、运行结果和报错内容:

img

求热心朋友帮忙解答,是哪里除了问题,非常感谢!

  • 写回答

3条回答 默认 最新

  • 简效 2023-04-18 17:34
    关注

    是vue3的项目吗

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月29日
  • 已采纳回答 4月21日
  • 修改了问题 4月18日
  • 创建了问题 4月18日

悬赏问题

  • ¥15 php环境如何实现国密SM2相关功能
  • ¥15 关于#单片机#的问题:K210 例程里面提示我iomem.h: No such file or directory
  • ¥15 LSPI算法的大问题
  • ¥15 java导出word 动态填充数据
  • ¥20 扑克的算牌公式及软件制作
  • ¥20 如何通过云图中RPG去计算云图上不同位置的值?
  • ¥15 请问不小心下载到了钓鱼软件怎么办?
  • ¥15 求国博抢票 求国博抢票 有的私
  • ¥50 swiftui @query 报错
  • ¥50 怎么解决刷卡或扫码后,点击软件输入框,win10屏幕键盘不会自动弹出的问题