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

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日

悬赏问题

  • ¥50 python如何用抖音这个接口输入抖音ID查询用户信息
  • ¥30 关于移动Web网页使用TinyMCE富文本编辑器上传图片后的光标定位、压缩等几个问题如何解决:
  • ¥25 activeMq在同服务器centos8下消费很慢
  • ¥20 为什么zynq CAN IP 无法进入config配置模式,XCan_SelfTest函数失效?
  • ¥15 Pycharm中程序直接运行可以但进入调试报错
  • ¥15 MATLAB动图问题
  • ¥15 有段代码不知道怎么理解,const isToken = (config.headers || {}).isToken === false
  • ¥15 我的显卡支持CUDA最高版本是12.3,这个版本也支持VS 2022 17.0这种情况下如果我想下载CUDA11.8,需要下载旧版本的VS2022吗
  • ¥15 pointnet2包安装
  • ¥20 射频功率问题,解答者有酬谢!