vue网站开发结构

之前也简单学习过,把每次的学习记录下来,以便于后续的学习和补充

一、开发工具

web端的开发工具可选择的有很多,比如Visual Studio Code、Webstorm、Intellij IDEA

我选择的是Visual Studio Code,免费,如果开发网站绰绰有余,这个根据个人爱好和使用习惯

Visual Studio Code 下载地址:Visual Studio Code - Code Editing. Redefined 

Webstorm 下载地址:WebStorm: The JavaScript and TypeScript IDE, by JetBrains

Intellij IDEA 下载地址:IntelliJ IDEA – the Leading Java and Kotlin IDE

俗话说的好啊,工欲善其事必先利其器,选择一款适合自己的开发工具,事半功倍

二、文件结构

1.node_modules  下载安装的依赖库

2.public 公共资源存放的文件

3.src 核心文件

4..gitignore 上传git的时候可忽略的文件名或者文件类

5.index.html  入口展示的html

6.package.json  安装依赖库的已加密做一些配置的地方

最主要的代码都写在src里面,当然了文件夹的名字看你心情,里面的结构也是写代码进行的结构

三、常用依赖库

(一)基本配置

1.vue  官网:Vue.js - The Progressive JavaScript Framework | Vue.js

就是一门开发前端的开发语言,可以用来开发网站、小程序、甚至app,功能很多,写的每一个页面都是后缀名为.vue的文件

2.vue-router 官网:Introduction | Vue Router

这是我们常说的路由,举个例子你写了一个Home.vue的文件,那你先让别人可以正常看到这个页面,那么怎么办,比如你放在了服务器上后是http://xxxx/home可以被访问到,但内部的话就是你把你本地的文件Home.vue 让用/home的路径可以访问到,但是随着发展,也有大佬写的依赖可以自动匹配路由

3.vite 官网:Vite | Next Generation Frontend Tooling

前端快速构建项目的工具,快速启动,高速开发

4.pinia 官网:Pinia | The intuitive store for Vue.js

数据装填存储,它允许您跨组件/页面共享状态,提供了跨组件共享数据的方案 

(二)辅助配置,按照需要进行安装和使用

1.unplugin-auto-import      自动导入文件

2.postcss-px-to-viewport   自动缩放

3.vite-plugin-vue-layouts   自动布局等

四、代码结构

着重对项目创建以及src里面的需要的内容进行展开

1.我们使用vite进行快速构建我们需要搭建的项目,vite安装可以使用命令行进行,以windows为例,首先检查是否可以使用npm命令,win+r打开搜索,输入cmd打开命令行,输入npm -v 检查是否已经安装,如果出现版本号,证明已经安装完毕,可以继续,如果没有安装,请参考大佬整理好的文章,引用了liyitongxue的文章Node.js安装与配置(详细步骤)_nodejs安装及环境配置-CSDN博客

2.cd 到某一个文件夹,例如

3.执行命令npm init vite-app 项目名

4.按照提示执行后就能启动一个新建的项目

5.用vscode工具打开新建的项目

打开后我们着重介绍src内部的文件

assets  components  App.vue  main.js  index.css

assets 存储到本地的图片之类的

components 主要就是存放写的页面

App.vue 显示我们页面的根页面

main.js 程序入口怎么少得了 main

index.css 一些样式得处理

五、适配

适配方式可以用

1. @media (max-width: 700px){} 来通过宽度进行大小屏显示处理

2.postcss-px-to-viewport 使用这个库在vite.config.js中添加

css: {

    postcss: {

      plugins: [

        postcsspxtoviewport({

          // 要转化的单位

          unitToConvert: 'px',

          // UI设计稿的大小

          viewportWidth: 1920,

          viewportHeight: 1080,

          // 转换后的精度

          unitPrecision: 6,

          // 转换后的单位

          viewportUnit: 'vw',

          // 字体转换后的单位

          fontViewportUnit: 'vw',

          // 能转换的属性,*表示所有属性,!border表示border不转

          propList: ['*'],

          // 指定不转换为视窗单位的类名,

          selectorBlackList: ['ignore-'],

          // 最小转换的值,小于等于1不转

          minPixelValue: 1,

          // 是否在媒体查询的css代码中也进行转换,默认false

          mediaQuery: false,

          // 是否转换后直接更换属性值

          replace: true,

          // 忽略某些文件夹下的文件或特定文件,例如 'node_modules' 下的文件

          exclude: [],

          // 包含那些文件或者特定文件

          include: [],

          // 是否处理横屏情况

          landscape: false

        }),

      ]

    }

六、打包

npm run build进行打包,假如打包后的文件无法访问,看看是否在vite.config.js中添加了base:'./'