解锁前端Vue3宝藏级资料 第四章 VUE常用 UI 库 1 ( element-plus,Ant ,naiveui,ArcoDesign)

news2024/11/18 11:21:02

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  现在常用的前台UI 分别是以下几种,我们将从中间选择介绍几个主流的UI的用于后台的系统搭建与开发。

  Ant Design Vue 
  element-plus
  naiveui
  ArcoDesign
  Bootstrap Vue 
  Buefy 
  Chakra UI 
  Framevuerk 
  Oruga 
  Tachyons 
  Tailwind CSS 
  NutUI 
  Vant 
  Vuetify.js

第一章 Vue3项目创建 1 Vue CLI 创建vue项目
第一章 Vue3项目创建 2 使用 Webpack 5 搭建 vue项目
第一章 Vue3项目创建 3 Vite 创建 vue项目
第二章 Vue3 基础语法指令
第三章 Vue Router路由器的使用
第四章 VUE常用 UI 库 1 ( element-plus,Ant ,naiveui,ArcoDesign)
第四章 VUE常用 UI 库 2 ( ailwind 后台框架)

4.1 element-plus

  Element Plus一直是国人最喜欢的一个UI架构使用率一直排在vue中的第一第二的位置,Element Plus 共 有68 个组件功能非常完善,而且它与vue3兼容的比较好。官方网站https://element-plus.org/ 很方便阅读学习。

 npm install element-plus --save

项目结构

zht-vite-vue
   |---node_modules
   |---index.html        //运行html
   |---src               //代码源文件
   |    |--zht           //组件目录
   |    |   |---Layout.vue  //后台框架页
   |    |--main.js       //入口文件
   |    |--App.vue       //模板入口路由
   |    |--router.js     //路由控制器   
   |----package.json     //配置文件

  搭建一个简单的后台管理系统,所有后台管理系统都是有这几个组件组成的,1 入口文件 2 后台框架页面 3 路由控制器。

1 main.js
  element-plus配置信息加入到vue组件中来,这样整个项目都可以使用element-plus样式中的UI做为组件使用。

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
const app = createApp(App)
app.use(router)
app.use(ElementPlus)
app.mount('#app')

2 App.vue 系统框架页面
  系统框架中设置一个总路由器,为了以后登录成功后页面移动到框架页面。

<script setup>
import { useRouter } from 'vue-router'
const router = useRouter()
router.push({ path: '/Layout' })
</script>
<template>
  <router-view />
</template>
<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
}
nav {
  padding: 30px;
}
nav a {
  font-weight: bold;
  color: #2c3e50;
}

nav a.router-link-exact-active {
  color: #42b983;
}
/* flex布局 */
.flex-float {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.flex {
  display: flex;
  align-items: center;
}
</style>

3 Layout.vue 系统框架页面

  创建一个常规的后台系统框架页面,页面分为三部分,头,菜单,主体。

    <el-container>
        <el-header>标题</el-header>
        <el-container>
          <el-aside width="200px">
            菜单
            </el-aside>
          <el-main>
          主页
          <router-view></router-view>
          </el-main>
        </el-container>
      </el-container>
`el-aside`中创建菜单组件,el-main加入路由组件路由使用看上一章,当点击菜单后路由组件加载对应的路由页面信息内容。

<script>    
</script>
<template>
  <div>
    <div class="common-layout">
      <el-container>
        <el-header>Header</el-header>
        <el-container>
          <el-aside width="200px">
            <el-menu background-color="none" text-color="#fff" :router="true">
              <el-sub-menu index="1">
                <template #title>
                  <el-icon><location /></el-icon>
                  <span>账号管理</span>
                </template>
                <el-menu-item-group>
                  <el-menu-item index="/zht1">
                  用户列表
                  </el-menu-item>
                </el-menu-item-group>
              </el-sub-menu>
            </el-menu>
            </el-aside>
          <el-main><router-view></router-view></el-main>
        </el-container>
      </el-container>
    </div>
  </div>
</template>
<style>
.el-header,
  .el-footer {
    background-color: #b3c0d1;
    color: var(--el-text-color-primary);
    text-align: center;
    line-height: 60px;
  }
  .el-aside {
    background-color: #d3dce6;
    color: var(--el-text-color-primary);
    text-align: center;
    line-height: 200px;
  }
  .el-container {
  height: 95vh;
  overflow: hidden;
}
</style>

4 前端页面路由设置
  在路由器中后台系统中使用到的所有页面设置。

import { createRouter, createWebHistory } from 'vue-router'
import zht1 from './zht/Layout.vue'
const router = createRouter({
    history: createWebHistory(import.meta.env.BASE_URL),
    routes: [
      {
        path: '/Layout',
        name: 'Layout',
        component:zht1,
        children: [
          {
            path: '/zht1',
            name: 'zht1',
            component:()=>import('./zht/zht.vue'),
          }   
        ]
      },
    ]
  })
  export default router

5 框架页菜单动态生成

<script setup>  
import { useRouter } from 'vue-router'
const router = useRouter()
const menus=[
    {name:"系统管理",id:10000,
    child:[
        {name:"用户管理",id:100001,path:"/zht1"},
        {name:"部门管理",id:100002,path:"/zht1"}]},
    {name:"业务管理",id:20000,
    child:[
        {name:"班组维修",id:20001,path:"/zht1"},
        {name:"工单管理",id:20002,path:"/zht1"}]}
];
const onpage=(e)=>{
router.push({ path:e.path })
}
</script>
<template>
  <div>
    <div class="common-layout">
      <el-container>
        <el-header>Header</el-header>
        <el-container>
          <el-aside width="200px">
            <el-menu     
            class="el-menu-vertical"
            background-color="#0c2135"
            text-color="#b7bdc3"
            active-text-color="#0a60bd">
                <template v-for="nus in menus" :key="nus.id">
                <el-sub-menu :index="nus.id">
                    <template #title>
                        <el-icon><location /></el-icon>
                        <span>{{nus.name}}</span>
                    </template>
                    <template v-for="cnus in nus.child" :key="cnus.id">
                    <el-menu-item @click="onpage(cnus)">{{cnus.name}}</el-menu-item>
                    </template>
                </el-sub-menu>
                </template>
            </el-menu>

            </el-aside>
          <el-main><router-view></router-view></el-main>
        </el-container>
      </el-container>
    </div>
  </div>
</template>
<style>
.el-header,
  .el-footer {
    background-color: #b3c0d1;
    color: var(--el-text-color-primary);
    text-align: center;
    line-height: 60px;
  }
  .el-aside {
    background-color: #d3dce6;
    color: var(--el-text-color-primary);
    text-align: center;
    line-height: 200px;
  }
  .el-container {
  height: 95vh;
  overflow: hidden;
}
</style>

  上面我们使用事件方法转发移动页面,也可以在el-menu标签中事件:router=“true” 直接用路由转移页面内容。

        <el-menu :router="true">
                <template v-for="nus in menus" :key="nus.id">
                <el-sub-menu :index="nus.id">
                    <template #title>
                        <el-icon><location /></el-icon>
                        <span>{{nus.name}}</span>
                    </template>
                    <template v-for="cnus in nus.child" :key="cnus.id">
                    <el-menu-item :index="cnus.path">{{cnus.name}}</el-menu-item>
                    </template>
                </el-sub-menu>
                </template>
            </el-menu>

系统后台页面架构

在这里插入图片描述

4.2 Ant

  Ant Design的 Vue UI框架绝对是前二名的存在,和Element Plus 不分上下一直存在Element Plus 和 Ant Design Vue 谁更优秀之争,开发者根据自己特点选择一款适合自己的UI框架。官网https://antdv.com/components/overview 方便大家阅读学习。

npm install ant-design-vue --save

1 main.js

​  将antdvUI配置信息加入到vue组件中来,项目中就可以使用ant样式进行UI开发。

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import Antd from 'ant-design-vue';
import 'ant-design-vue/dist/antd.css';
const app = createApp(App)
app.use(router)
app.use(Antd)
app.mount('#app')

2 App.vue 系统框架页面

  系统框架中设置一个总路由器,为了以后登录成功后页面移动到框架页面。

<script setup>
import { useRouter } from 'vue-router'
const router = useRouter()
router.push({ path: '/Layout' })
</script>
<template>
  <router-view />
</template>
<style>
</style>

3 Layout.vue 系统框架页面

<template>
  <a-layout>
    <a-layout-sider>Sider</a-layout-sider>
    <a-layout>
      <a-layout-header>Header</a-layout-header>
      <a-layout-content>Content</a-layout-content>
      <a-layout-footer>Footer</a-layout-footer>
    </a-layout>
  </a-layout>
  </template>
<style>
.ant-layout {
  height: 100vh;
  overflow: hidden;
}
</style>

创建动态菜单跳转页面

<script setup>  
import { useRouter } from 'vue-router'
const router = useRouter()
const menus=[
    {name:"系统管理",id:10000,
    child:[
        {name:"用户管理",id:100001,path:"/zht1"},
        {name:"部门管理",id:100002,path:"/zht1"}]},
    {name:"业务管理",id:20000,
    child:[
        {name:"班组维修",id:20001,path:"/zht1"},
        {name:"工单管理",id:20002,path:"/zht1"}]}
];
const onpage= e =>{
console.log(e);
router.push({ path:'/zht1'})
}
</script>
<template>
  <a-layout>
    <a-layout-sider width="200" style="background: #fff">
        <a-menu
          mode="inline"
          :style="{ height: '100%', borderRight: 0 }"
        >
        <template v-for="nus in menus" :key="nus.id">
        <a-sub-menu >
            <template #title>
              <span>
                <user-outlined />
                {{nus.name}}
              </span>
            </template>
            <template v-for="cnus in nus.child" :key="cnus.id">
                <a-menu-item @click="onpage(cnus)">{{cnus.name}}</a-menu-item>
            </template>  
        </a-sub-menu>  
        </template>      
        </a-menu>
    </a-layout-sider>
    <a-layout>
      <a-layout-header>头部分</a-layout-header>
      <a-layout-content><router-view></router-view></a-layout-content>
    </a-layout>
  </a-layout>
  </template>
<style>
.ant-layout {
    height: 100vh;
  overflow: hidden;
}
</style>

4 前端页面路由设置

  路由器router.js文件中后台系统中使用到的所有页面设置。

import { createRouter, createWebHistory } from 'vue-router'
import zht1 from './zht/Layout.vue'
const router = createRouter({
    history: createWebHistory(import.meta.env.BASE_URL),
    routes: [
      {
        path: '/Layout',
        name: 'Layout',
        component:zht1,
        children: [
          {
            path: '/zht1',
            name: 'zht1',
            component:()=>import('./zht/zht.vue'),
          }   
        ]
      },
    ]
  })
  export default router

在这里插入图片描述

4.3 naiveui

  NaiveUI 也是很流行的UI框架现在它应该能排到使用率的前五名,它的特点是比上面二个UI在开发的时候轻巧方便。它附带 70 多个精心制作的组件,这些组件是高性能的、可定制的,具有一流的 TypeScript 支持,并且适合任何 Vue 3 应用程序。官网地址https://www.naiveui.com/

npm install naive-ui --save
npm i -D naive-ui

1 main.js

  引入 naiveui 样式到项目组件中来。

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import naive from 'naive-ui'
const app = createApp(App)
app.use(router)
app.use(naive)
app.mount('#app')

2 Layout.vue 系统框架页面

  其他功能与上面二个例子一样,就是在菜单生产的时候有自己的语句结构。

<script setup>  
import { useRouter } from 'vue-router'
const router = useRouter()
const menus=[
    {name:"系统管理",id:10000,
    child:[
        {name:"用户管理",id:100001,path:"/zht1"},
        {name:"部门管理",id:100002,path:"/zht1"}]},
    {name:"业务管理",id:20000,
    child:[
        {name:"班组维修",id:20001,path:"/zht1"},
        {name:"工单管理",id:20002,path:"/zht1"}]}
];
const onpage=(key, item) =>{
console.log(key);
console.log(item);
router.push({ path:item.path})
}
</script>
<template>
    <div style="height: 100vh; position: relative">
      <n-layout position="absolute">
        <n-layout-header style="height: 64px; padding: 24px" bordered></n-layout-header>
        <n-layout has-sider position="absolute" style="top: 64px; bottom: 64px">
          <n-layout-sider bordered content-style="padding: 24px;">
          菜单
        <n-menu
          :collapsed-width="64"
          :collapsed-icon-size="22"
          :options="menus"
          @update:value="onpage"//路由触发事件
          key-field="id"
          label-field="name"
          children-field="child"//子集合
        />
          </n-layout-sider>
          <n-layout content-style="padding: 24px;"
              内容
            <router-view></router-view>
          </n-layout>
        </n-layout>
        <n-layout-footer
          bordered
          position="absolute"
          style="height: 64px; padding: 24px"
        >
          底部
        </n-layout-footer>
      </n-layout>
    </div>
  </template>

浏览器中会看到后台基本框架。

在这里插入图片描述

4.4 ArcoDesign

  Arco Design 是由字节跳动开源 一个前端UI架构,本人比较喜欢用的一个前端UI。它是后起之秀提供了一整套设计组件,使用起来真的是方便简单,代码简洁很适合国人的开发习惯。官方https://arco.design/vue/docs/start网站

npm install --save-dev @arco-design/web-vue

1 引入UI架构到项目中

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import ArcoVue from '@arco-design/web-vue';
import '@arco-design/web-vue/dist/arco.css';
const app = createApp(App)
app.use(ArcoVue);
app.use(router)
app.mount('#app')

2 页面架构

<script setup>  
import { useRouter } from 'vue-router'
const router = useRouter()
const menus=[
    {name:"系统管理",id:10000,
    child:[
        {name:"用户管理",id:100001,path:"/zht1"},
        {name:"部门管理",id:100002,path:"/zht1"}]},
    {name:"业务管理",id:20000,
    child:[
        {name:"班组维修",id:20001,path:"/zht1"},
        {name:"工单管理",id:20002,path:"/zht1"}]}
];
const onpage=(item) =>{
console.log(item);
router.push({ path:item.path})
}
</script>
<template>
    <a-layout style="height: 99vh;">
      <a-layout-header>标题</a-layout-header>
      <a-layout>
        <a-layout-sider style="width:260px; margin-left: 1px;">
      <a-menu :style="{ width: '100%' }">
      <template v-for="ns in menus" :key="ns.id">
      <a-sub-menu>
          <template #title>
            <IconCalendar></IconCalendar>{{ns.name}}
          </template>
          <template v-for="cns in ns.child" :key="cns.id">
          <a-menu-item @click="onpage(cns)">{{cns.name}}</a-menu-item>
          </template>
      </a-sub-menu>
      </template>
      </a-menu>
      </a-layout-sider>
        <a-layout-content>
            <router-view></router-view>
        </a-layout-content>
      </a-layout>
      <a-layout-footer>Footer</a-layout-footer>
    </a-layout>
</template>
<style>

</style>

浏览器中效果
在这里插入图片描述

4.5 NutUI

京东UI主要是用于移动端开发使用。

https://nutui.jd.com/#/zh-CN/guide/start

npm init vite@latest vue-nutui
npm i @nutui/nutui --save-dev
npm install vue-router@4 --save-dev

1 main.js中引入UI架构到项目

import { createApp } from "vue";
import App from "./App.vue";
// 注意:这种方式将会导入所有组件
import NutUI from "@nutui/nutui";
// 采用按需加载时  此全局css样式,需要删除
import "@nutui/nutui/dist/style.css";

createApp(App).use(NutUI).mount("#app");

2 路由设置

import { createRouter, createWebHistory } from 'vue-router'
import Page1 from './page/page1.vue';
import Page2 from './page/page2.vue';
import Page3 from './page/page3.vue';

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Page3
  },
  {
    path: '/Page1',
    name: 'Page1',
    component: Page1
  },
  {
    path: '/Page2',
    name: 'Page2',
    component: Page2
  }
];
const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes,
});
export default router;

3 在page文件中创建page1.vue,page2.vue,page3.vue 三个页面

<script setup>
</script>
<template>
  <h1>Page1</h1>
</template>
<style scoped>
</style>


<script setup>
</script>
<template>
  <h1>Page2</h1>
</template>
<style scoped>
</style>


<script setup>
</script>
<template>
  <h1>欢迎大家使用zht的App</h1>
</template>
<style scoped>
</style>

4 App.vue中创建UI框架

<script setup>
  import { Home,Category,Find,Cart,My} from '@nutui/icons-vue';
  import { useRouter } from 'vue-router';
  const router = useRouter();

  // 跳转到指定路由
  const navigateTo = (routeName) => {
    router.push({ name: routeName });
  };

</script>
<template>
  
<nut-tabbar @tab-switch="tabSwitch" :bottom="true">
     <nut-tabbar-item tab-title="首页" @click="navigateTo('Home')">
        <template #icon>
          <Home></Home>
        </template>
      </nut-tabbar-item>
      <nut-tabbar-item tab-title="分类" @click="navigateTo('Page1')">
        <template #icon>
          <Category></Category>
        </template>
      </nut-tabbar-item>
      <nut-tabbar-item tab-title="标签" @click="navigateTo('Page2')">
        <template #icon>
          <Find></Find>
        </template>
      </nut-tabbar-item>
      <nut-tabbar-item tab-title="购物车" @click="navigateTo('Page3')">
        <template #icon>
          <Cart></Cart>
        </template>
      </nut-tabbar-item>
      <nut-tabbar-item tab-title="我的">
        <template #icon>
          <My></My>
        </template>
      </nut-tabbar-item>
</nut-tabbar>
<RouterView />
</template>

<style scoped>

</style>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/983998.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[machine Learning]推荐系统

其实严格来说推荐系统也是一种监督学习,我们需要根据已有数据进行预测,但是这种训练数据不是单纯的输入和输出问题,所以被归类为"超越监督学习"的一种? 今天去旁听了隔壁专业的机器学习课程,感觉自己的知识确实不是很系统,所以后面会找个机会把前面的代码给补充上.…

【肝素··】

Recent advances in the management of venous thromboembolism Korean J Hematol 2010;45:8-13 Serpin Structure, Mechanism, and Function-2002 糖胺聚糖 凝血 Fibrinolysis | Detailed Pedia

2023百度云智大会:科技与创新的交汇点

​ 这次的百度云智大会&#xff0c;可谓是亮点云集—— 发布了包含42个大模型、41个数据集、10个精选应用范式的全新升级千帆大模型平台2.0&#xff0c;发布首个大模型生态伙伴计划&#xff0c;而且也预告了文心大模型4.0的发布&#xff0c;大模型服务的成绩单也非常秀&#x…

文件重命名不再繁琐:MetaRename for Mac帮你简化重命名流程

文件重命名是我们在日常使用电脑时经常需要进行的一项任务。但是&#xff0c;有时候我们需要批量重命名文件&#xff0c;并且希望在新文件名中添加一些特定的信息&#xff0c;比如日期、时间、序号等。这时候&#xff0c;使用MetaRename for Mac可以帮助你轻松完成任务。 Meta…

手写Spring:第7章-实现应用上下文

文章目录 一、目标&#xff1a;实现应用上下文二、设计&#xff1a;实现应用上下文三、实现&#xff1a;实现应用上下文3.1 工程结构3.2 Spring应用上下文和Bean对象扩展类图3.3 对象工厂和对象扩展接口3.3.1 对象工厂扩展接口3.3.2 对象扩展接口 3.4 定义应用上下文3.4.1 定义…

Python数据分析实战-将dataframe某列的值分成不同区间并计算每个区间的频数(附源码和实现效果)

实现功能 将dataframe某列的值分成不同区间并计算每个区间的频数 实现代码 import pandas as pd# 创建dataframe data {Name:[Tom1, Jack1, Steve1, Ricky1, Tom2, Jack2, Steve2, Ricky2],Score:[78,60,59,42,88,34,69,142]} df pd.DataFrame(data) print(df)# 定义区间和…

Linux 部署1Panel现代化运维管理面板远程访问

文章目录 前言1. Linux 安装1Panel2. 安装cpolar内网穿透3. 配置1Panel公网访问地址4. 公网远程访问1Panel管理界面5. 固定1Panel公网地址 前言 1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器&#xff0c;包括主机监控、…

el-form表单动态校验(场景: 输入框根据单选项来动态校验表单 没有选中的选项就不用校验)

el-form表单动态校验 el-form常规校验方式: // 结构部分 <el-form ref"form" :model"form" :rules"rules"><el-form-item label"活动名称: " prop"name" required><el-input v-model"form.name" /…

【网络通信 -- WebRTC】FlexFec 基本知识点总结概述

【网络通信 -- WebRTC】FlexFec 基本知识点总结概述 【1】FlexFec 的保护方案 假设存在一组源数据包(D L)&#xff0c;其序列号从 1 开始运行到 D L 一维非交错行 FEC(1-D Non-interleaved Row FEC) : 一种连续的源数据包进行保护的方案&#xff0c;可用于恢复按行分组的源…

用Pycharm开发Flask框架设置debug模式、port 端口和 host 主机无效的解决办法

方法二 &#xff08;推荐&#xff09; Name 的选择请自行填写&#xff0c;随意。 这里笔者就默认 app 注意事项 需要以这个作为启动项&#xff0c;而不是原来的 flask 启动配置文件。 参考链接 1. 用Pycharm开发Flask框架设置debug模式没有效果的解决办法 2. flask中的de…

项目管理流程文件,招标支撑文件,项目研发,验收等系列支撑文件

写在前面&#xff1a; 我花了一些时间整理了这些年从事软件行业以来的文档&#xff0c;将它们分类整理后&#xff0c;电脑瞬间变得更加简洁。我整理了数百份软件开发过程中的常用文档&#xff0c;包括项目计划、立项计划、需求分析、概要设计、详细设计、数据库设计、用户操作手…

盘点3款超好用的免费录屏软件,快来看!

在现代数字化社会中&#xff0c;录屏软件成为了各行各业中必备的工具之一&#xff0c;用于记录操作步骤、制作教程、分享游戏精彩瞬间等。而寻找一款免费的、功能强大的录屏软件也变得越来越重要。本文将为您介绍3款免费录屏软件&#xff0c;并详细说明使用步骤&#xff0c;帮助…

C语言是否快被时代所淘汰?

今日话题&#xff0c;C语言是否快被时代所淘汰&#xff1f;在移动互联网的冲击下&#xff0c;windows做的人越来越少&#xff0c;WP阵营没人做&#xff0c;后台简单的php&#xff0c;复杂的大数据处理的java&#xff0c;要求性能的c。主流一二线公司基本上没多少用C#的了。其实…

K8S:kubeadm搭建K8S+Harbor 私有仓库

文章目录 一.部署规划1.主机规划2.部署流程 二.kubeadm搭建K8S1.环境准备2.安装docker3. 安装kubeadm&#xff0c;kubelet和kubectl4.部署K8S集群&#xff08;1&#xff09;初始化&#xff08;2&#xff09;部署网络插件flannel&#xff08;3&#xff09;创建 pod 资源 5.部署 …

pikachu——一、暴力破解模块通关教程

pikachu 一、靶场介绍二、Burte Force&#xff08;暴力破解&#xff09;概述三、基于表单的暴力破解四、验证码绕过&#xff08;on client&#xff09;五、验证码绕过&#xff08;on server&#xff09;六、token防爆破&#xff1f; 一、靶场介绍 靶场搭建&#xff1a; https:…

OpenShift 4 - 在 OpenShift Virtualization 上自动部署 OpenShift 托管集群(演示视频)

《OpenShift / RHEL / DevSecOps 汇总目录》 说明&#xff1a;本文已经在 OpenShift 4.12 OpenShift Virtualization 4.12 ACM 2.8 的环境中验证 文章目录 技术架构安装配置环境环境要求安装配置 OpenShift Virtualization安装配置 Red Hat ACM安装配置 MetalLB在 OpenShift …

无涯教程-JavaScript - DEC2HEX函数

描述 DEC2HEX函数将十进制数转换为十六进制。 语法 DEC2HEX (number, [places])争论 Argument描述Required/Optionalnumber 要转换的十进制整数。 如果number为负数,则将忽略位数,并且DEC2HEX返回10个字符(40位)的十六进制数字,其中最高有效位是符号位。其余的39位是幅度位…

24.绳子切割

目录 题目 Description Input Output 思路 注意事项 C完整代码 题目 Description 有N条绳子&#xff0c;它们的长度分别为Li&#xff0c;Li都是正整数。如果从它们中切割出K条长度相同的绳子&#xff08;绳子的长度为整数&#xff09;&#xff0c;这K条绳子每条最长能有…

照片怎么进行压缩?这几个压缩方法分享给你

照片怎么进行压缩&#xff1f;在如今这个时代&#xff0c;我们经常需要共享照片。但是&#xff0c;一些高像素的照片可能会占用大量存储空间&#xff0c;甚至可能无法通过电子邮件或社交媒体进行共享。因此&#xff0c;我们需要对照片进行压缩&#xff0c;以减小文件的大小并方…

互联网医院App开发:构建医疗服务的技术指南

互联网医院App的开发是一个复杂而具有挑战性的任务&#xff0c;但它也是一个充满潜力的领域&#xff0c;可以为患者和医疗专业人员提供更便捷的医疗服务。本文将引导您通过一些常见的技术步骤来构建一个简单的互联网医院App原型&#xff0c;以了解该过程的基本概念。 技术栈选…