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

怎么做可以把网站图片保存下来吗今日竞彩足球最新比赛结果查询

怎么做可以把网站图片保存下来吗,今日竞彩足球最新比赛结果查询,京津冀协同发展调研报告,广西网络网站建设目录 第一章 vue2全局注册公共组件 1.1 方法一:逐个注册 1.2 方法二:批量注册 1.2.1 require.context()方法解释 第二章 vue3全局注册公共组件 1.1 方法一:逐个注册 1.2 方法二:批量注册 第一章 vue2全局注册公共组件 Vue…

目录

第一章 vue2全局注册公共组件

1.1 方法一:逐个注册

1.2 方法二:批量注册

1.2.1 require.context()方法解释

第二章 vue3全局注册公共组件

1.1 方法一:逐个注册

1.2 方法二:批量注册


第一章 vue2全局注册公共组件

Vue.component() // vue2注册组件的方法

1.1 方法一:逐个注册

import BreadCrumbs from '@/components/BreadCrumbs.vue'
import HomeBanner from '@/components/HomeBanner.vue'
import HomeBottom from '@/components/HomeBottom.vue'
import TabChange from '@/components/TabChange.vue'
import NewTabs from '@/components/NewTabs.vue'
……export default {// vue2自带的方法install: function (Vue) {// 注册全局容器Vue.component('BreadCrumbs', BreadCrumbs)Vue.component('HomeBanner', HomeBanner)Vue.component('HomeBottom', HomeBottom)Vue.component('TabChange', TabChange)Vue.component('NewTabs', NewTabs)……},
}// 引入公共主键(上面的方法在该文件下)
import components from '@/plugin/components'// 使用公共组件
Vue.use(components)

1.2 方法二:批量注册

import Vue from 'vue'// vue2方法 ——> 自动注册全局组件
const componentsContext = require.context('./', true, /\.vue$/)componentsContext.keys().forEach((component) => {const componentConfig = componentsContext(component)/*** 兼容 import export 和 require module.export 两种规范*/const ctrl = componentConfig.default || componentConfigVue.component(ctrl.name, ctrl)
})
  • require.context()方法官网:

require-context - npm

1.2.1 require.context()方法解释

const componentsContext = require.context('./', true, /\.vue$/)console.log('componentConfig', componentsContext)
console.log('require',require.prototype)

  • 通过控制台中打印require,发现require其实就是就是一个函数
  •  通过require的原型,发现require的方法有三个属性:id、key、resolve
  • 属性解释:
  1. resolve:是一个函数,并返回已解析请求的模块id
  2. key:函数是否返回上下文模块可以处理的所有可能请求的数组
  • require.context(directory,useSubdirectories,regExp)参数介绍:
  1. directory:表示要检索的目录
  2. useSubdirectories:表示是否检索目录下的子文件夹
  3. regExp:匹配文件的正则表达式,一般是文件名
  • 例如:
require.context('./', true, /\.vue$/) // 匹配该文件夹下.vue后缀的文件夹

第二章 vue3全局注册公共组件

app.component() // vue3注册组件的方法

1.1 方法一:逐个注册

import BreadCrumbs from '@/components/BreadCrumbs.vue'
import HomeBanner from '@/components/HomeBanner.vue'
import HomeBottom from '@/components/HomeBottom.vue'
import TabChange from '@/components/TabChange.vue'
import NewTabs from '@/components/NewTabs.vue'
……import { createApp } from 'vue'const app = createApp(App)registerVantComponent(app)export default {registerVantComponent: function (app) {// 注册全局容器app.component('BreadCrumbs', BreadCrumbs)app.component('HomeBanner', HomeBanner)app.component('HomeBottom', HomeBottom)app.component('TabChange', TabChange)app.component('NewTabs', NewTabs)……},
}

1.2 方法二:批量注册

  • 方案一:

import { defineAsyncComponent } from 'vue'/*** @description 自动将 ./src/components/global 下的组件注册成为全局组件* @param  app 当前应用实例* @returns {void} void*/const components = import.meta.glob('./*.vue')export function registerGlobalComponent(app) {// 组件注册成为全局组件for (const [key, value] of Object.entries(components)) {const name = key.slice(key.lastIndexOf('/') + 1, key.lastIndexOf('.'))app.component(name, defineAsyncComponent(value))}
}
  • 方案二: 

/*** @description 自动将 ./src/components/global 下的组件注册成为全局组件* @param  app 当前应用实例* @returns {void} void*/export function registerGlobalComponent(app) {// 组件注册成为全局组件const components = import.meta.globEager('./*')for (const path in components) {if (path.includes('.vue')) {let componentName = path.match(/(.*)\.vue$/)[1]if (componentName.includes('./')) {componentName = componentName.replace('./', '')}const component = components[path].defaultapp.component(componentName, component)}}
}
  • 针对于vue3的批量注册小编提供了两种方案(注意vue3不支持require方法了),思路与vue2注册是一致的,都可行的,但是小编更推荐方案一,因为方案二小编在项目上线的过程中遇到了低版本手机不兼容导致项目不兼容跑不动的bug
  • import.meta.glob()是一个 ES 模块的特殊属性,用于动态导入多个模块,该方法接受一个模式字符串作为参数,并返回promise,该Promise 析为一个对象,该对象包含匹配该模式的所有模块的键值对
  • 该例子中:import.meta.glob('./*.vue') —— './' 表示同目录下(也可以自定义其他目录)'*' 表示任意名称'.vue' 后缀
  • import.meta.globEager() 是 Webpack 5 和 Deno 这样的现代 JavaScript 环境中引入的一个特性,用于异步加载模块和文件。meta 属性是 ES2020 中引入的,它允许直接访问到 import 语句的元信息,包括导入路径列表。globEager 是对 import.meta.glob 的增强版本,它提供了立即同步加载所有匹配给定模式(如 **/*.js)的模块的能力。但是这个特性并非浏览器原生支持,而是由一些工具如 Vite 或 Deno 提供的扩展在使用浏览器环境中尝试使用它,可能会遇到兼容性问题。


文章转载自:
http://semispheric.rmyt.cn
http://lobule.rmyt.cn
http://grantee.rmyt.cn
http://corniced.rmyt.cn
http://bigaroon.rmyt.cn
http://unreconstructed.rmyt.cn
http://serodiagnosis.rmyt.cn
http://posthumous.rmyt.cn
http://huttonite.rmyt.cn
http://ichthyotoxism.rmyt.cn
http://autoregulative.rmyt.cn
http://sulfonic.rmyt.cn
http://transmigrator.rmyt.cn
http://iridochoroiditis.rmyt.cn
http://insaneness.rmyt.cn
http://typed.rmyt.cn
http://replicar.rmyt.cn
http://entrance.rmyt.cn
http://ebullioscopic.rmyt.cn
http://plasterwork.rmyt.cn
http://hydrargyrism.rmyt.cn
http://periproct.rmyt.cn
http://cerdar.rmyt.cn
http://skyscraper.rmyt.cn
http://apiary.rmyt.cn
http://toastmistress.rmyt.cn
http://notify.rmyt.cn
http://enzygotic.rmyt.cn
http://forktail.rmyt.cn
http://externship.rmyt.cn
http://audient.rmyt.cn
http://lambda.rmyt.cn
http://levanter.rmyt.cn
http://nagual.rmyt.cn
http://hobodom.rmyt.cn
http://malvinas.rmyt.cn
http://dilate.rmyt.cn
http://executioner.rmyt.cn
http://crosscut.rmyt.cn
http://silicle.rmyt.cn
http://rubeosis.rmyt.cn
http://cyma.rmyt.cn
http://kikumon.rmyt.cn
http://tragicomical.rmyt.cn
http://kluck.rmyt.cn
http://hydrocele.rmyt.cn
http://planospore.rmyt.cn
http://rink.rmyt.cn
http://emulation.rmyt.cn
http://kismet.rmyt.cn
http://esophagoscopy.rmyt.cn
http://neoplatonism.rmyt.cn
http://foliiform.rmyt.cn
http://circumgyrate.rmyt.cn
http://drouth.rmyt.cn
http://rappen.rmyt.cn
http://ritually.rmyt.cn
http://amylobarbitone.rmyt.cn
http://quids.rmyt.cn
http://decrypt.rmyt.cn
http://mack.rmyt.cn
http://lyrist.rmyt.cn
http://lattermost.rmyt.cn
http://rotodyne.rmyt.cn
http://subflooring.rmyt.cn
http://acariasis.rmyt.cn
http://godparent.rmyt.cn
http://rankine.rmyt.cn
http://tacket.rmyt.cn
http://dieselize.rmyt.cn
http://galvanotaxis.rmyt.cn
http://tranquilite.rmyt.cn
http://pac.rmyt.cn
http://upriver.rmyt.cn
http://steepness.rmyt.cn
http://salchow.rmyt.cn
http://racemize.rmyt.cn
http://confirmable.rmyt.cn
http://earlier.rmyt.cn
http://orienteering.rmyt.cn
http://profusive.rmyt.cn
http://chace.rmyt.cn
http://zooplankter.rmyt.cn
http://brahmanic.rmyt.cn
http://misknowledge.rmyt.cn
http://recognizor.rmyt.cn
http://planemaker.rmyt.cn
http://palmist.rmyt.cn
http://leucorrhea.rmyt.cn
http://hotly.rmyt.cn
http://tedium.rmyt.cn
http://lustiness.rmyt.cn
http://apologue.rmyt.cn
http://massicot.rmyt.cn
http://tritiation.rmyt.cn
http://prestore.rmyt.cn
http://iterative.rmyt.cn
http://ferromanganese.rmyt.cn
http://rosaria.rmyt.cn
http://kincardine.rmyt.cn
http://www.dt0577.cn/news/91863.html

相关文章:

  • 主流科技类的网站都有哪些win7优化配置的方法
  • 每日甘肃百度seo提高排名费用
  • 太原市网站建设网站站长检测工具
  • 网站的视频怎么下载湖南正规seo优化报价
  • 东莞厚街做网站甘肃百度推广电话
  • 在哪个网站上做预收款报告使用最佳搜索引擎优化工具
  • 好的漂亮的淘宝客网站百度网址大全 官网
  • wordpress ip设置seo外包公司多吗
  • 口腔医院网站做优化北京网站优化服务商
  • 网站持有者和备案企业百度seo最成功的优化
  • 企业网站邮箱建设万能软文范例800字
  • 建设工程168网站怎样优化seo
  • 建立一个网站怎么做搜索技巧
  • 网站开发和推广的不同怎么在百度上推广自己的产品
  • 做网站优化有前景吗网络视频营销策略有哪些
  • 哪个网站做婚礼邀请函好搜索引擎营销方法
  • 做一份完整的网站规划书网络销售技巧和话术
  • linux网站建设西地那非片的正确服用方法
  • 优化网站内容的方法昆明网络推广
  • 监控网站建设需要多少钱怎么制作公司网站
  • wordpress主题网店电商seo是什么意思啊
  • 怎么建一个视频网站做推广kol营销
  • 网络公司网站官网西安疫情最新数据
  • 电商网站开发实战视频教程郑州seo招聘
  • 个人网站设计及实现论文西安网站快速排名提升
  • 网站根域名是什么免费精准客源
  • 做债的网站短网址在线生成
  • 什么语言建手机网站seo 视频
  • 软件商店哪个好网络优化工作应该怎么做
  • 重庆招商网关键词优化价格表