当前位置: 首页 > news >正文

网站建设花钱吗北京哪个网站建设最好

网站建设花钱吗,北京哪个网站建设最好,如何优化营销型企业网站,网站建设高手要学多久一、创建请求封装目录 选中自己的项目,右键鼠标---->新建---->目录---->名字自定义【我的是api】 二、创建两个js封装文件 选中封装的目录,右键鼠标---->新建---->js文件---->名字自定义【我的两个js文件分别是my_http和my_api】 三…

一、创建请求封装目录

选中自己的项目,右键鼠标---->新建---->目录---->名字自定义【我的是api】

二、创建两个js封装文件

选中封装的目录,右键鼠标---->新建---->js文件---->名字自定义【我的两个js文件分别是my_http和my_api】

三、编写my_http.js封装文件

/*** 基础API请求地址(常量,全大写命名规范)* @type {string}* @constant*/
let BASE_URL = 'https://自己的基础接口URL/'/*** 封装的HTTP请求核心函数* @param {string} url - 请求的接口路径(不需要包含基础接口URL)* @param {Object} [data={}] - 请求参数,默认为空对象* @param {string} [method='GET'] - HTTP方法,默认GET,支持GET/POST/DELETE/PUT等* @returns {Promise} - 返回Promise便于链式调用* */
export default function http(url, data = {}, method = 'GET') {// 返回一个Promise对象,支持外部链式调用return new Promise((resolve, reject) => {// 调用uni-app的底层请求APIuni.request({// 拼接完整请求地址(基础接口URL +  请求的接口路径)url: BASE_URL + url,// 请求参数(GET请求时会自动转为query string)data: data,// 请求方法(转换为大写保证兼容性)method: method.toUpperCase(),// 请求头配置header: {// 从本地存储获取token,没有就位空'token': uni.getStorageSync('token') || '',// 默认JSON格式'Content-Type': 'application/json'},// 请求成功回调(注意:只要收到服务器响应就会触发,无论HTTP状态码)success: (res) => {/* HTTP层状态码处理(4xx/5xx等也会进入success回调) */if (res.statusCode !== 200) {const errMsg = `[${res.statusCode}]${res.errMsg || '请求失败'}`showErrorToast(errMsg)// 使用Error对象传递更多错误信息reject(errMsg)}/* 业务层状态码处理(假设1表示成功) */if (res.data.code === 1) {// 提取业务数据(约定data字段为有效载荷)resolve(res.data.data)} else {// 业务错误处理const errMsg = res.data.msg || `业务错误[${res.data.code}]`showErrorToast(errMsg)reject(res.data.msg)}},// 请求失败回调(网络错误、超时等)fail: (err) => {const errMsg = `网络连接失败: ${err.errMsg || '未知错误'}`showErrorToast(errMsg)reject(new Error(errMsg))},})})
}/*** 显示统一格式的错误提示(私有工具方法)* @param {string} message - 需要显示的错误信息* @private*/
function showErrorToast(message) {uni.showToast({title: message, // 提示内容icon: 'none', // 不显示图标duration: 3000 // 3秒后自动关闭})
}

 四、编写my_api.js封装文件

// 引入公共的请求封装
import http from './my_http.js'// 获取bannner列表
export const getBanner=()=>{return http('user/getBanner')
}

五、index.vue简单调用接口

<script setup>// 引入apiimport { getBanner } from '../../api/my_api'// 生命周期,进来就加载import {onLoad} from '@dcloudio/uni-app'onLoad(() => {//获取banner结果列表getBanner().then(res => {console.log('获取到的banner结果',res )})})
</script>

测试打印的结果

六、简单编写首页轮播图

<template><view class="container"><!-- v-if="bannerList.length" 	如果有数据就渲染 :list="bannerList"  		数据列表keyName="img"  				渲染的图片,img为接口的图片字段radius="8"  				圆角height="160"  				高160autoplay  					自动播放,默认值为true--><up-swiper v-if="bannerList.length" :list="bannerList" keyName="img" radius="8" height="160" autoplay></up-swiper></view></template><script setup>// 引入apiimport {getBanner} from '../../api/my_api'// 生命周期,进来就加载import {onLoad} from '@dcloudio/uni-app'//vueimport {ref,reactive} from 'vue'//定义轮播图数组const bannerList = ref([])onLoad(() => {//获取banner结果列表getBanner().then(res => {console.log(res)//将获取的值赋值给轮播图数组变量bannerList.value = res})})
</script><style lang="scss">.container {padding: 20rpx;}
</style>

 效果

http://www.dtcms.com/a/406888.html

相关文章:

  • Weblogic XMLDecoder 反序列化漏洞(CVE-2017-10271)
  • HTTP 报文格式
  • 新手 Visual Studio 环境配置 详解
  • 24小时通过网站备案可以找厂家的网站
  • 关于物联网的基础知识(四)——国内有代表性的物联网平台都有哪些?
  • 网站建设对企业的好处有哪些wordpress page模版
  • 外贸网站建设的重要性用wordpress仿a站
  • (17)ASP.NET Core2.2 EF基于数据模型创建数据库
  • 阿里云瓴羊发布企业级AI智能体服务平台AgentOne,成就AI时代的“超级公司”
  • OPENCV摄像头读取视频
  • AIGC——提示词的设计
  • 网站节约化建设swf上传wordpress
  • 如何创建个人网站深圳品牌女装加盟
  • Docker部署的MySQL,如何一键备份Docker中的MySQL?
  • 《基于物理仿真和学习潜投影的机器人触觉感知模拟到真实》ICRA2021论文解读
  • IU5365E:一体化铅酸电池充电管理解决方案
  • 厦门安岭路网站建设oa系统的概念
  • 【C++】如何搞定 C++ 内存管理?
  • 关于做情侣的网站的图片素材网络营销效果评估的作用有哪些
  • 网站制作洋网络泰安最新消息
  • 中科君达视界千眼狼科学仪器赋能“芯屏汽合”制造
  • 案例分享:增材制造的负泊松比材料拉胀测试-VIC-3D高空间分辨率DIC系统在增材制造复杂结构中的应用
  • 安卓接入Max广告源
  • Rockchip平台 Android 11 到 Android 16 系统占用内存对比分析
  • 简洁文章类织梦网站模板郑州企业服务公司
  • 企业网站的需求是什么WordPress網站放ICP
  • Avalonia:创建安卓、Web应用(部署到iis)
  • three.js —— 引入模型
  • 一次跨端数据类型兼容问题的排查与解决(判断类型)
  • Fscan:内网综合扫描工具深度入门指南