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

win7iis如何做网站深圳网站备案拍照

win7iis如何做网站,深圳网站备案拍照,免费做网站平台,天眼针对请求模块化封装搭配自动化导入#xff08;简单易用#xff09; 目标目录目标代码前提步入正题src / utils / index.jssrc /api / index.jssrc /api / request.jssrc /api / service.jssrc /api / utils.jssrc /api / modules / demo.js 自动化配置vite.config.jseslint 校… 针对请求模块化封装搭配自动化导入简单易用 目标目录目标代码前提步入正题src / utils / index.jssrc /api / index.jssrc /api / request.jssrc /api / service.jssrc /api / utils.jssrc /api / modules / demo.js 自动化配置vite.config.jseslint 校验问题 作者GitHubhttps://github.com/gitboyzcf 有兴趣可关注 目标目录 目标代码 script setup// 在js中直接调用useRequest() 函数就可以获取到配置的接口const { API_DEMO_POST, API_DEMO_GET } useRequest()// 使用非常简单API_DEMO_GET({page: 1, pageSize: 10}).then(res { // 请求返回结果}) /script接下来看下面配置 前提 这里用到的相关npm包 element-plus 在这里用到了消息提示axios 网络请求库vueuse Vue hooks库nprogress 加载进度条consola 好看的日志打印 以上包根据自己需求修改即可、可有可无 步入正题 src / utils / index.js import NProgress from nprogress import nprogress/nprogress.css import { ElMessage } from element-plus /*** 获取资源路径* param {相对路径} relativePath* 如果要动态获取assets的文件文件夹下的images中的图片* relativePath 传入 assets/images/name.png* returns 文件所在路径*/ const getStaticResource (relativePath) {return new URL(../${relativePath}, import.meta.url) }/*** 消息提示* param {弹出消息类型》 info error warning success loading } type* param {弹出消息文本} message* param {弹出时间} duration* param {弹出消息偏移} offset*/ const msg (type, message, duration 2000, offset 90) {ElMessage({message,type,duration,offset}) }/*** 模块化方式处理 默认处理 modules文件夹下的所有js文件 内容以export default导出的文件* param { 模块内容集合 } moduleContext* returns modules集合*/ const modulesHandle (moduleContext {}) {if (!Object.keys(moduleContext).length) returnconst modules {}Object.keys(moduleContext).forEach((v) {for (let key in moduleContext[v].default) {modules[key] moduleContext[v].default[key]}})return modules }export { getStaticResource, modulesHandle, NProgress, msg } src /api / index.js import { modulesHandle } from /utilsconst apis modulesHandle(import.meta.glob(./modules/**/*.js, { eager: true })) export const useRequest () apismport.meta.glob函数从文件系统导入多个模块详情请看官网 https://cn.vitejs.dev/guide/features#glob-import src /api / request.js import { service } from ./service function createRequest(service) {function request(config) {// config 自定义配置// axios默认配置const configDefault {baseURL: import.meta.env.VITE_APP_API_BASEURL, // 所有通过此配置的基础地址 在.env文件配置timeout: 15000, // 请求超时时间responseType: json, // 响应类型headers: {// 请求头配置...}}const requestConfig Object.assign(configDefault, config)return service(requestConfig)}return request }export const request createRequest(service)src /api / service.js import axios from axios import { httpLogError, requestError, throttleToLogin } from ./utils import { msg, NProgress } from /utils import consola from consolaexport function createService() {const request axios.create()request.interceptors.request.use((request) {NProgress.start()return request},(err) {NProgress.done()return Promise.reject(err)})request.interceptors.response.use((response) {NProgress.done()const dataAxios response.data// 这个状态码是和后端约定的const { code, data } dataAxios// 根据 code 进行判断if (code undefined) {return dataAxios} else {// 目前和公司后端口头约定是字符串,以防万一强制转字符串switch (${code}) {// code 200 | 2 代表没有错误case 200:consola.withTag(${response.config.url}).success()return data// code 400001004 代表token 过期打回登录页case 400001004:throttleToLogin()breakcase 400:// 不是正确的 codereturn requestError(response)case 401:// 错误登录return throttleToLogin()default:// 不是正确的 codereturn requestError(response)}}}, (error) {NProgress.done()console.log(error)const status error.response?.statusswitch (status) {// TODO 再考虑下怎么判断是跨域问题case undefined:case null:httpLogError(error, 网路错误或请求跨域)breakcase 400:httpLogError(error, 请求错误)breakcase 401:httpLogError(error, 未授权请登录)breakcase 403:httpLogError(error, 拒绝访问)breakcase 404:httpLogError(error, 请求地址出错: ${error.response.config.url})breakcase 408:httpLogError(error, 请求超时)breakcase 500:httpLogError(error, 服务器内部错误)breakcase 501:httpLogError(error, 服务未实现)breakcase 502:httpLogError(error, 网关错误)breakcase 503:httpLogError(error, 服务不可用)breakcase 504:httpLogError(error, 网关超时)breakcase 505:httpLogError(error, HTTP版本不受支持)breakdefault:httpLogError(error, 请求错误)break}msg(error, error.message)return Promise.reject(error)})return request }export const service createService()src /api / utils.js import { msg as nMsg } from /utils import consola from consolaexport const httpLogError (error, msg) {error.message msgconsola.error(new Error(msg)) }export const requestError (response) {return new Promise((_, reject) {const { data } responseconst msg api请求出错 ${response.config.url}${data.message}nMsg(error, msg)consola.error(new Error(msg))reject(data)}) }src /api / modules / demo.js import { request } from /api/request.js export default {API_DEMO_POST(data {}) {return request({baseURL: /mock/login,url: api/mock,method: post,data})},API_DEMO_GET(params {}) {return request({url: /demo/get,method: get,params})} }自动化配置 安装 unplugin-auto-import/vite插件 https://github.com/unplugin/unplugin-auto-import#readme npm install unplugin-auto-import -D or pnpm install unplugin-auto-import -D or yarn add unplugin-auto-import -Dvite.config.js import { defineConfig } from vite import vue from vitejs/plugin-vue import AutoImport from unplugin-auto-import/viteexport default defineConfig({plugins: [vue(),AutoImport({imports: [vue,vue-router,pinia,{/api: [useRequest]}],// eslintrc: {// enabled: true, // Default false// filepath: ./.eslintrc-auto-import.json, // Default ./.eslintrc-auto-import.json// globalsPropValue: true // Default true, (true | false | readonly | readable | writable | writeable)}})] }) eslint 校验问题 在vue文件中直接使用时 vscode 报红 说未定义 上面 vite.config.js中注释部分放开运行项目根据这个./.eslintrc-auto-import.json相对路径会生成该 js 文件 。 注生成后 把 enabled属性改为 false 以免再次生成.在根目录的 eslintrc.cjseslint配置文件中添加下面代码module.exports {// ...extends: [// ..../.eslintrc-auto-import.json] }到这里就结束了后续还会更新 前端 系列相关还请持续关注 感谢阅读若有错误可以在下方评论区留言哦 推荐文章 Vue3-Composition API 快速上手简单易懂
http://www.pierceye.com/news/908470/

相关文章:

  • 免费按模板制作微网站厦门十大软件公司
  • 免费网站模板在哪下载什么网站做的最好
  • 在智联招聘网站做销售医疗软件网站建设公司排名
  • 小程序商城设计太原搜索引擎优化
  • 旅游商业网站策划书网页在线设计平台
  • 网站建设的软文怎么写深圳我的网站
  • 动漫网站建设意义js 取网站域名
  • 网站建设项目功能需求分析报告做健身类小程序的网站
  • 专业建设网站公司哪家好建设工程合同管理多少分及格
  • 网站制作是那个大连开发区一中
  • 做预约的网站2345网址导航官网下载
  • 网站建设创建wordpress用户评论图片
  • .耐思尼克官方网站工程公司会计账务处理
  • 如何进入微网站毕业设计网站开发
  • 已经备案的网站新增ip怎么做网站分站如何做
  • 网站建设 常州怎么做网络推广营销
  • 海南建设工程信息网站常用网站建设软件
  • 福州网络推广建站网站建设工作室深圳
  • html的网站案例长春头条新闻今天
  • 免费的十大免费货源网站产品设计开发流程图
  • 做网站的内容网站建设工作室有几个部门
  • jquery win8风格企业网站模板wordpress编辑器 模板
  • 北京国互网网站建设电话免费网站怎么盈利模式
  • 网站建设图片如何加载ssh做电商 网站
  • 网站开发资质网站域名服务错误
  • html5 社团网站模板 代码下载上海做营销网站哪个公司好
  • 动易网站 模板南京企业建站系统模板
  • 网站实名网站建设技术百科
  • 网站策划书范文模板网盟推广费
  • 先做网站还是先做app唐山模板建站定制网站