前端使用vue,一个项目从零开始开发大概构思

06-01 1315阅读

以下是使用Vue从零开始开发项目的完整构思框架,结合最新技术实践与官方指南整理:


一、项目启动阶段

  1. 环境搭建

    • 安装Node.js(推荐LTS版本)及npm包管理器

    • 全局安装Vue CLI:npm install -g @vue/cli

    • 验证安装:vue --version

    • 配置npm镜像(加速依赖下载):npm config set registry https://registry.npmmirror.com

  2. 项目初始化

    • 创建新项目:vue create my-project(选择默认预设或手动配置Babel/Vuex等)

    • 项目结构概览:

    my-project/  
    ├── public/       # 静态资源  
    ├── src/          # 源码  
    │   ├── assets/   # 图片/字体  
    │   ├── components/ # 可复用组件  
    │   ├── views/    # 页面级组件  
    │   ├── router/   # 路由配置  
    │   ├── store/    # 状态管理  
    │   ├── App.vue   # 根组件  
    │   └── main.js   # 入口文件  
    └── package.json  # 依赖与脚本  
    

二、核心开发阶段

  1. 组件化开发

    • 创建基础组件(如按钮、表单):

      
      
      {{ label }}  
      
      
    export default {  
      props: ['label'],  
      methods: {  
        handleClick() {  
          this.$emit('click')  
        }  
      }  
    }  
      
    
    • 组件通信:

    ◦ 父子:props + emit

    ◦ 跨级:provide/inject

    ◦ 全局事件总线:this.$root.$emit

  2. 状态管理(Vuex)

    • 安装:npm install vuex@next(Vue3需用@next版本)

    • 模块化设计示例:

    // src/store/modules/user.js  
    const state = {  
      userInfo: null  
    }  
    const mutations = {  
      SET_USER(state, payload) {  
        state.userInfo = payload  
      }  
    }  
    export default { namespaced: true, state, mutations }  
    
  3. 路由配置(Vue Router)

    • 动态路由匹配:

    // src/router/index.js  
    const routes = [  
      { path: '/user/:id', component: UserDetail, props: true }  
    ]  
    
    • 路由守卫:
    router.beforeEach((to, from, next) => {  
      if (to.meta.requiresAuth && !isAuthenticated) next('/login')  
      else next()  
    })  
    

三、进阶优化

  1. 性能优化

    • 代码分割:const Home = () => import('@/views/Home.vue')

    前端使用vue,一个项目从零开始开发大概构思
    (图片来源网络,侵删)

    • 懒加载图片:前端使用vue,一个项目从零开始开发大概构思

(图片来源网络,侵删)

• Vue Devtools:浏览器扩展调试状态与组件树

• ESLint + Prettier:代码规范与格式化

前端使用vue,一个项目从零开始开发大概构思
(图片来源网络,侵删)

• Jest + Vue Test Utils:单元测试


四、部署与维护

  1. 生产构建

    • 命令:npm run build

    • 输出目录:dist/(含压缩后的静态文件)

  2. 部署方案

    • 静态托管:Vercel/Netlify(一键部署)

    • 服务器部署:Nginx配置反向代理(解决跨域问题)

    • CDN加速:静态资源分发优化

  3. 持续维护

    • 版本控制:Git + GitHub Actions自动化部署

    • 监控工具:Sentry错误追踪


五、关键注意事项

  1. 数据驱动思维:避免直接操作DOM,通过修改数据驱动视图更新
  2. 组件化粒度:合理划分组件,单文件组件(.vue)保持简洁
  3. 状态管理边界:仅在跨组件共享时使用Vuex,局部状态优先用provide/inject
  4. 响应式原理:理解Proxy与依赖追踪机制,避免内存泄漏

扩展学习资源:

• 官方网页:Vue.js

• 实战案例:Vue Mastery

• 进阶架构:微前端实践(参考网页)

### 1. 项目规划
#### 明确项目目标与需求
和相关人员交流,明确项目功能、性能、设计等需求,如电商网站要具备商品展示、购物车、订单支付等功能。
#### 确定技术栈
基于项目需求,选择合适的技术栈,如Vue 3 + Vite + Vue Router + Pinia + ElementPlus。
#### 制定项目计划
制定详细的项目计划,划分任务、设置里程碑和时间节点,借助项目管理工具(如Trello、Jira)管理进度。
### 2. 环境搭建
#### 安装Node.js和npm
从Node.js官网(https://nodejs.org/)下载安装Node.js,安装完成后在命令行输入 `node -v` 和 `npm -v` 验证安装。
#### 创建Vue项目
使用Vite创建Vue项目,命令如下:npm init vite@latest my-vue-project -- --template vue
cd my-vue-project
npm install
### 3. 项目架构设计
#### 目录结构设计
常见的Vue项目目录结构如下:my-vue-project/
├── public/          # 静态资源
├── src/             # 源代码
│   ├── assets/      # 静态资源,如图片、样式
│   ├── components/  # 组件
│   ├── views/       # 页面视图
│   ├── router/      # 路由配置
│   ├── stores/      # 状态管理
│   ├── App.vue      # 根组件
│   ├── main.js      # 入口文件
├── package.json     # 项目依赖和脚本配置#### 路由设计
使用Vue Router配置路由,示例如下:// src/router/index.js
import { createRouter, createWebHistory } from 'vue-router';
import HomeView from '../views/HomeView.vue';
import AboutView from '../views/AboutView.vue';
const routes = [
  {
    path: '/',
    name: 'Home',
    component: HomeView
  },
  {
    path: '/about',
    name: 'About',
    component: AboutView
  }
];
const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes
});
export default router;#### 状态管理设计
使用Pinia管理状态,示例如下:// src/stores/counter.js
import { defineStore } from 'pinia';
export const useCounterStore = defineStore('counter', {
  state: () => ({
    count: 0
  }),
  actions: {
    increment() {
      this.count++;
    }
  }
});
### 4. 功能开发
#### 组件开发
按照功能划分开发组件,如头部组件、侧边栏组件、商品列表组件等。

  
    

My Vue Project

// 组件逻辑 header { background-color: #333; color: white; padding: 10px; } #### 页面开发 组合组件开发页面,如首页、商品详情页、购物车页等。 #### 接口调用 使用Axios等工具调用后端接口获取数据,示例如下:import axios from 'axios'; export const fetchData = async () => { try { const response = await axios.get('https://api.example.com/data'); return response.data; } catch (error) { console.error('Error fetching data:', error); return null; } }; ### 5. 样式设计 #### 选择样式方案 可以使用CSS、SCSS、CSS Modules、Tailwind CSS等进行样式设计。 #### 全局样式和组件样式 在 `src/assets` 目录下创建全局样式文件,组件样式使用 `` 或 `` 进行局部样式控制。 ### 6. 测试与调试 #### 单元测试 使用Jest、Vue Test Utils等工具进行单元测试,确保组件和函数的正确性。 #### 集成测试 测试组件之间的交互和接口调用的正确性。 #### 调试 使用浏览器开发者工具调试代码,检查网络请求、样式问题等。 ### 7. 项目优化 #### 代码优化 进行代码压缩、去除无用代码、优化组件性能等。 #### 性能优化 使用懒加载、缓存等技术优化项目性能。 #### 安全优化 防止XSS、CSRF等安全漏洞。 ### 8. 部署上线 #### 打包项目 使用 `npm run build` 命令打包项目。 #### 选择部署方式 可以选择部署到服务器、云平台(如阿里云、腾讯云)或静态网站托管服务(如Netlify、Vercel)。

以下是一个使用 Vue.js 从零开始开发项目的大致构思步骤:

一、项目规划与需求分析

  1. 明确目标
    • 确定项目的核心功能和用途,例如是开发一个电商网站、社交媒体平台还是企业级应用等。
    • 定义项目的目标用户群体及其需求。
    • 功能模块划分
      • 将项目分解为多个功能模块,如用户认证、数据展示、交互操作等。
      • 绘制功能模块之间的关系图,以便更好地理解各部分的交互方式。

二、技术选型与环境搭建

  1. 技术栈选择
    • 前端框架:除了 Vue.js 本身,考虑是否需要使用其他配套库或工具,如 Vuex(状态管理)、Vue Router(路由管理)、Axios(数据请求)等。
    • CSS 预处理器:根据团队习惯和项目需求,选择合适的 CSS 预处理器,如 Sass、Less 等,以提高样式编写效率。
    • 构建工具:通常使用 Vue CLI 创建项目基础结构,也可以根据需要集成 Webpack 等构建工具进行更定制化的配置。
    • 开发环境搭建
      • 安装 Node.js 和 npm(Node 包管理器)。
      • 使用 Vue CLI 创建项目:vue create project-name,并根据提示选择所需的配置选项,如是否使用 Babel、ESLint 等。
      • 安装其他必要的依赖库,如 Axios、Vuex 等:npm install axios vuex --save。

三、项目结构设计

  1. 目录结构规划
    • src 文件夹下通常包含以下主要目录:
      • assets:存放静态资源,如图片、字体、样式表等。
      • components:用于存放自定义组件。
      • views:放置页面级别的组件。
      • router:包含路由相关的配置文件。
      • store:如果使用 Vuex,用于存放状态管理相关的代码。
      • App.vue:根组件文件。
      • main.js:项目的入口文件。
      • 组件化设计原则
        • 遵循单一职责原则,将界面拆分成多个小的、可复用的组件。
        • 每个组件应具有明确的功能和清晰的接口,方便在不同地方使用和维护。

四、页面设计与布局

  1. 原型制作
    • 使用工具如 Figma、Sketch 等创建项目的线框图和原型,展示页面布局、元素位置和交互流程。
    • 与团队成员或利益相关者进行沟通和确认,确保设计符合用户需求和预期。
    • 页面布局实现
      • 根据原型设计,在 Vue 项目中使用 HTML 和 CSS 构建页面的基本结构和布局。
      • 可以利用 CSS 框架(如 Bootstrap、Tailwind CSS)来加速布局开发过程,但要注意避免过度依赖,以免影响项目的灵活性和独特性。

五、数据交互与状态管理

  1. API 设计与对接
    • 如果项目需要与后端服务器进行数据交互,确定 API 的接口规范,包括请求方法、路径、参数和返回值格式等。
    • 使用 Axios 等 HTTP 客户端库在 Vue 组件中发送网络请求,获取和提交数据。例如:
import axios from 'axios';
export default {
    data() {
        return {
            items: []
        };
    },
    created() {
        axios.get('https://api.example.com/items')
            .then(response => {
                this.items = response.data;
            })
            .catch(error => {
                console.error('There was an error!', error);
            });
    }
}
  1. 状态管理(可选)
    • 对于复杂的应用程序,当涉及到多个组件之间的数据共享和状态变更时,使用 Vuex 进行集中式状态管理。
    • 定义状态(state)、突变(mutations)、动作(actions)和 getter,以组织和管理应用的状态。例如:
// store/index.js
import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex);
export default new Vuex.Store({
    state: {
        counter: 0
    },
    mutations: {
        increment(state) {
            state.counter++;
        }
    },
    actions: {
        increment({ commit }) {
            commit('increment');
        }
    },
    getters: {
        getCounter: state => state.counter
    }
});

在组件中使用 Vuex 进行状态管理和操作:

    

{{ counter }}

Increment
import { mapState, mapActions } from 'vuex'; export default { computed: { ...mapState(['counter']) }, methods: { ...mapActions(['increment']) } }

六、交互功能实现

  1. 事件处理
    • 在 Vue 组件中通过 v-on 指令或 @ 简写形式绑定事件监听器,实现用户交互功能。例如:
Click Me
methods: {
    handleClick() {
        alert('Button clicked!');
    }
}
  1. 表单处理
    • 对于涉及用户输入的表单,使用 Vue 的双向数据绑定特性,将表单元素的 v-model 属性绑定到组件的数据属性上,方便数据的获取和验证。例如:
 
data() {
    return {
        username: ''
    };
}
  1. 动态渲染
    • 根据数据的变化动态渲染列表、条件渲染元素等,提高用户体验和应用的灵活性。例如:
  • {{ item.name }}
data() {
    return {
        items: [
            { id: 1, name: 'Item 1' },
            { id: 2, name: 'Item 2' }
        ]
    };
}

七、测试与调试

  1. 单元测试
    • 使用测试框架(如 Jest)对 Vue 组件进行单元测试,确保各个组件的功能正确性和稳定性。例如:
import { shallowMount } from '@vue/test-utils';
import MyComponent from '@/components/MyComponent.vue';
describe('MyComponent.vue', () => {
    it('renders correctly', () => {
        const wrapper = shallowMount(MyComponent);
        expect(wrapper.text()).toContain('Expected Text');
    });
});
  1. 调试工具

    • 利用浏览器的开发者工具(如 Chrome DevTools)进行调试,查看组件的层次结构、数据绑定情况、网络请求等信息,帮助定位和解决问题。
    • Vue 也提供了一些官方的调试工具,如 Vue Devtools,可以更方便地检查应用的状态和调试组件。
    • 错误处理

      • 在代码中添加错误处理机制,捕获可能的异常并给予用户友好的提示,避免应用崩溃。例如:
try {
    // 可能抛出错误的代码
} catch (error) {
    console.error('An error occurred:', error);
    alert('Something went wrong! Please try again later.');
}

八、部署与发布

  1. 构建优化
    • 在项目开发完成后,使用 Vue CLI 提供的构建命令对项目进行打包构建,生成优化后的生产版本代码:npm run build。这将包括压缩 JavaScript 和 CSS 文件、去除开发环境中的调试代码等操作。
    • 部署准备
      • 根据项目的需求和目标平台,选择合适的部署方式,如将构建后的文件上传到服务器、部署到云平台(如 Netlify、Vercel、AWS S3 等),或者使用容器化技术(如 Docker)进行部署。
      • 域名配置与 SSL(可选)
        • 如果需要通过自定义域名访问项目,需要在域名注册商处配置域名解析,指向部署服务器的 IP 地址。同时,为了提高安全性和用户信任度,可以考虑配置 SSL 证书,实现 HTTPS 加密访问。

从零开始使用 Vue.js 开发一个前端项目,需要经过以下几个关键步骤。以下是一个详细的构思和流程,帮助你系统地搭建和开发项目。


1. 需求分析与功能规划

在开发之前,明确项目的目标和需求:

  • 目标用户:谁会使用这个项目?他们的需求是什么?
  • 核心功能:列出项目的主要功能模块。例如:
    • 用户注册/登录
    • 数据展示(列表、表格等)
    • 数据交互(增删改查)
    • 权限管理
    • 技术选型:确认是否需要后端支持,以及前后端分离的开发模式。
    • UI设计:初步确定界面风格,是否有现成的设计稿或参考模板。

      2. 技术栈选择

      Vue.js 是核心框架,但还需要搭配其他工具和库来完成整个项目:

      • 构建工具:Vue CLI 或 Vite
      • 状态管理:Vuex 或 Pinia(推荐 Pinia,更轻量且易用)
      • 路由管理:Vue Router
      • UI组件库:
        • Element Plus(适合企业级后台管理系统)
        • Vuetify(Material Design 风格)
        • Ant Design Vue(阿里巴巴推出的 UI 库)
        • HTTP 请求库:Axios 或 Fetch API
        • 样式预处理器:Sass/Less/Stylus(可选)
        • 代码规范:ESLint + Prettier
        • 测试工具:Jest、Cypress 等(可选)

          3. 项目初始化

          使用 Vue CLI 初始化项目
          npm install -g @vue/cli
          vue create my-project
          

          或者使用 Vite:

          npm create vite@latest my-project --template vue
          cd my-project
          npm install
          
          安装常用依赖
          npm install vue-router pinia axios sass
          

          4. 项目目录结构设计

          良好的目录结构有助于项目的维护和扩展。以下是一个常见的目录结构示例:

          src/
          ├── assets/          # 静态资源(图片、字体等)
          ├── components/      # 公共组件
          ├── views/           # 页面级组件
          ├── router/          # 路由配置
          ├── store/           # 状态管理
          ├── services/        # API 请求封装
          ├── utils/           # 工具函数
          ├── styles/          # 全局样式文件
          ├── App.vue          # 根组件
          └── main.js          # 入口文件
          

          5. 配置路由(Vue Router)

          创建 router/index.js 文件,配置页面路由:

          import { createRouter, createWebHistory } from 'vue-router';
          import Home from '../views/Home.vue';
          import About from '../views/About.vue';
          const routes = [
            { path: '/', component: Home },
            { path: '/about', component: About },
          ];
          const router = createRouter({
            history: createWebHistory(),
            routes,
          });
          export default router;
          

          在 main.js 中引入路由:

          import { createApp } from 'vue';
          import App from './App.vue';
          import router from './router';
          createApp(App).use(router).mount('#app');
          

          6. 状态管理(Pinia 或 Vuex)

          使用 Pinia 示例:

          安装 Pinia:

          npm install pinia
          

          创建 store/index.js 文件:

          import { defineStore } from 'pinia';
          export const useUserStore = defineStore('user', {
            state: () => ({
              name: '',
              token: null,
            }),
            actions: {
              login(token) {
                this.token = token;
              },
              logout() {
                this.token = null;
              },
            },
          });
          

          在 main.js 中引入 Pinia:

          import { createApp } from 'vue';
          import { createPinia } from 'pinia';
          import App from './App.vue';
          const app = createApp(App);
          const pinia = createPinia();
          app.use(pinia);
          app.mount('#app');
          

          7. 封装 HTTP 请求(Axios)

          创建 services/api.js 文件:

          import axios from 'axios';
          const instance = axios.create({
            baseURL: 'https://api.example.com',
            timeout: 5000,
          });
          // 请求拦截器
          instance.interceptors.request.use(
            (config) => {
              const token = localStorage.getItem('token');
              if (token) {
                config.headers.Authorization = `Bearer ${token}`;
              }
              return config;
            },
            (error) => Promise.reject(error)
          );
          // 响应拦截器
          instance.interceptors.response.use(
            (response) => response.data,
            (error) => Promise.reject(error)
          );
          export default instance;
          

          8. 页面开发

          创建页面组件

          例如,在 views/Home.vue 中:

            
              

          欢迎来到首页

          获取数据
          • {{ item.name }}
          import api from '@/services/api'; export default { data() { return { data: [], }; }, methods: { async fetchData() { try { const response = await api.get('/data'); this.data = response; } catch (error) { console.error(error); } }, }, };

          9. 样式与布局

          • 使用 UI 组件库(如 Element Plus 或 Ant Design Vue)快速搭建基础布局。
          • 在 styles/global.scss 中定义全局样式,如字体、颜色变量等。

            10. 测试与优化

            • 单元测试:为组件和逻辑编写单元测试,确保功能正确性。
            • 性能优化:
              • 按需加载组件(使用 defineAsyncComponent)。
              • 图片懒加载。
              • 减少不必要的 DOM 操作。
              • SEO 优化:如果是 SSR 项目,可以使用 Nuxt.js 或 Next.js 提升 SEO 效果。

                11. 部署

                • 打包:
                  npm run build
                  
                • 部署到服务器:
                  • 使用 Nginx 部署静态文件。
                  • 如果有后端服务,可以通过反向代理将前端和后端整合。

                    12. 后续维护

                    • 定期更新依赖库,修复潜在的安全漏洞。
                    • 根据用户反馈持续优化功能和性能。
                    • 记录开发文档,方便后续团队协作。

                      通过以上步骤,你可以系统地从零开始开发一个 Vue.js 项目,并确保项目具有良好的结构、性能和可维护性。

                      以下是一个使用 Vue 从零开始开发前端项目的完整构思流程,涵盖技术选型、开发步骤和关键实践:

                      一、项目规划与架构

                      1. 需求分析

                        • 明确项目核心功能(如电商后台/数据可视化/社交应用)
                        • 制定用户故事地图或功能清单
                        • 设计信息架构(页面层级与导航)
                        • 技术选型

                          • 核心框架:Vue 3 + TypeScript(推荐组合)
                          • 构建工具:Vite(开发体验优于 Webpack)
                          • 状态管理:Pinia(Vue 官方推荐,替代 Vuex)
                          • 路由管理:Vue Router 4
                          • UI 组件库:Element Plus/Naive UI/Quasar(根据设计风格选择)
                          • HTTP 客户端:Axios + 拦截器封装
                          • 样式方案:SCSS + CSS Modules/Tailwind CSS
                          • 代码规范:ESLint + Prettier + Husky(提交前检查)

                      二、开发环境搭建

                      1. 初始化项目

                        npm create vue@latest my-project -- --ts
                        # 或使用 Vite
                        npm create vite@latest my-project -- --ts --template vue
                        
                      2. 关键配置

                        • vite.config.ts:配置别名、代理、构建优化
                        • .eslintrc.cjs:设置 TypeScript 检查规则
                        • tsconfig.json:配置路径映射和编译选项

                      三、核心开发流程

                      1. 组件化开发

                        • 按功能拆分组件(如 src/components/UserProfile)
                        • 使用 Composition API 组织逻辑
                        • 采用 语法简化代码
                        • 状态管理

                          // stores/user.ts
                          import { defineStore } from 'pinia'
                          export const useUserStore = defineStore('user', {
                            state: () => ({ currentUser: null }),
                            actions: {
                              async fetchUser() {
                                const res = await axios.get('/api/user')
                                this.currentUser = res.data
                              }
                            }
                          })
                          
                        • 路由配置

                          // router/index.ts
                          import { createRouter, createWebHistory } from 'vue-router'
                          const routes = [
                            {
                              path: '/dashboard',
                              component: () => import('@/views/Dashboard.vue'),
                              meta: { requiresAuth: true }
                            }
                          ]
                          const router = createRouter({
                            history: createWebHistory(),
                            routes
                          })
                          
                        • API 集成

                          // utils/request.ts
                          import axios from 'axios'
                          const service = axios.create({
                            baseURL: import.meta.env.VITE_API_BASE_URL,
                            timeout: 10000
                          })
                          // 请求拦截器
                          service.interceptors.request.use(config => {
                            const token = localStorage.getItem('token')
                            if (token) config.headers.Authorization = `Bearer ${token}`
                            return config
                          })
                          
                        • 样式管理

                          • 使用 SCSS 编写组件级样式
                          • 采用 CSS Modules 避免样式冲突
                          • 建立设计规范系统(如色彩/间距/字体变量)

                      四、测试与优化

                      1. 单元测试

                        // tests/unit/user.spec.ts
                        import { useUserStore } from '@/stores/user'
                        describe('User Store', () => {
                          it('fetches user data', async () => {
                            const store = useUserStore()
                            await store.fetchUser()
                            expect(store.currentUser).toBeDefined()
                          })
                        })
                        
                      2. 性能优化

                        • 代码分割(动态导入)
                        • 图片懒加载
                        • 使用 v-show 替代频繁切换的 v-if
                        • 配置 CDN 加速静态资源

                      五、部署与监控

                      1. 构建配置

                        // vite.config.ts
                        export default defineConfig({
                          build: {
                            chunkSizeWarningLimit: 1000, // 调整分包警告阈值
                            cssCodeSplit: true // CSS 分割
                          }
                        })
                        
                      2. 部署方案

                        • 静态资源托管(Vercel/Netlify)
                        • Nginx 配置缓存策略
                        • 配置 SSL 证书
                        • 监控体系

                          • 集成 Sentry 错误监控
                          • 使用 Vue DevTools 分析性能
                          • 配置 Google Analytics 埋点

                      六、扩展实践

                      1. 微前端架构:使用 qiankun 实现模块解耦
                      2. 国际化:集成 vue-i18n 实现多语言支持
                      3. 可视化搭建:结合 Vue 3 的动态组件实现低代码平台
                      4. SSR 支持:使用 Nuxt.js 实现服务端渲染

                      项目结构示例:

                      my-project/
                      ├── src/
                      │   ├── assets/          # 静态资源
                      │   ├── components/      # 公共组件
                      │   ├── stores/          # Pinia 状态管理
                      │   ├── router/          # 路由配置
                      │   ├── utils/           # 工具函数
                      │   ├── views/           # 页面组件
                      │   ├── styles/          # 全局样式
                      │   └── App.vue
                      ├── tests/               # 测试文件
                      ├── .eslintrc.cjs
                      ├── vite.config.ts
                      └── package.json
                      

                      这个流程可根据项目规模调整,小型项目可适当简化状态管理和测试环节,但核心的开发规范和工程化思想应保持。

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。

相关阅读

目录[+]

取消
微信二维码
微信二维码
支付宝二维码