Vue—Vue的项目结构,怎样用Vue3进行开发,如何起步Vue3

简介: Vue—Vue的项目结构,怎样用Vue3进行开发,如何起步Vue3

这篇将着重介绍Vue的项目结构以及如何使用VSCode对Vue来进行开发。

IDE的准备

下载VSCode

首先我们需要使用前端开发 IDE 利器:Visual Studio Code

进官网下载:https://code.visualstudio.com

并进行安装

插件安装

打开VSCode后,点击扩展按钮,搜索需要的插件名称,点击安装然后重启一下VSCode。

推荐安装的插件有:

◼ Chinese (Simplified) Language Pack(微软):VSCode 中文插件

◼ Vetur(Pine Wu):Vue开发插件,支持 .vue 文件语法高亮显示等

◼ Vue 3 Snippets(hollowtree):Vue 代码片段以及提示插件

◼ Axios Snippets(Yggdrasill-7C9):Axios 的代码提示

◼ Element UI Snippets(Snowffer Studio):Element UI 的代码提示

◼ ESLint(Dirk Baeumer):JS 代码检测工具

◼ Beautify(HookyQR):格式化JS,JSON,CSS、HTML等

◼ HTML Snippets(Mohamed Abusaid):Html代码片段以及提示

◼ HTML CSS Support(ecmel):智能提示当前项目所支持的样式

在这里插入图片描述

打开工作区文件夹

在这里插入图片描述

Vue3项目结构

结构分析

加载工作区后可以看到demo项目的项目结构,其中:

目录/文件 说明
node_modules npm 加载的项目依赖模块
public 存放静态资源(一般不会变动的),其中 index.html 是项目主页
src 这里是我们要开发的目录,基本上要做的事情都在这个目录里。里面包含了几个目录及文件:assets: 存放静态资源如logo等,可能会变动的。components: 存放组件(一般是可复用的) router:路由管理,在index.js中配置路由 store:状态管理(一般不用)views:视图组件(不可复用的页面组件)index.css: 样式文件。
App.vue 根组件(主要是页面导航,路由加载)
main.js 项目的入口文件(加载插件、CSS、存储全局变量、实例化Vue等
package.json 项目配置文件
README.md 项目的说明文档,markdown 格式
dist 使用 npm run build 命令打包后会生成该目录。

Vue3起步(创建一个新页面)

创建页面组件

在 views 目录中右键新建 .vue 文件:如 Test.vue

在这里插入图片描述

在Test.vue中输入:

<template>
  <div id="test">
    <h1>test页面</h1>
  </div>
</template>

• 使用VSCode可使用alt+shift+f快捷键自动对齐代码

•.vue 组件的内容都放在 template 标签中

• 有且只能有一个 template 根标签

• template 根标签下只能有一个元素(如div)

配置路由

打开 router 目录中的 index.js,为刚刚创建的Test.vue添加新路由,即当用户访问/about时,服务器调用项目中/views/About.vue组件。

import { createRouter, createWebHashHistory } from "vue-router";
import Home from "../views/Home.vue";
const routes = [
  {
    path: "/",
    name: "Home",
    component: Home,
  },
  {
    path: "/about",
    name: "About",
    // route level code-splitting
    // this generates a separate chunk (about.[hash].js) for this route
    // which is lazy-loaded when the route is visited.
    component: () =>
      import(/* webpackChunkName: "about" */ "../views/About.vue"),
  },
  {
    path: "/test",
    name: "Test",
    component: () => import("../views/Test.vue")
    },    
];
const router = createRouter({
  history: createWebHashHistory(),
  routes,
});
export default router;

参数含义为:

path:请求路径

name:路由名称

component:要显示的页面组件

在根组件中添加导航

打开 App.vue 文件,App.vue可以看成是一个根页面导航,我们现在需要在页面上添加一个链接,使其导航访问/test页面。

App.vue:

<template>
  <div id="nav">
    <router-link to="/">Home</router-link> |
    <router-link to="/about">About</router-link>|
    <router-link to="/test">测试</router-link>
  </div>
  <router-view />
</template>
<style lang="less">
#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;
  a {
    font-weight: bold;
    color: #2c3e50;
    &.router-link-exact-active {
      color: #42b983;
    }
  }
}
</style>

用VSCode启动运行项目

点击Terminal——New Terminal 打开新的终端

在这里插入图片描述

输入命令行:

cd demo

npm run serve

在这里插入图片描述

成功运行!

在这里插入图片描述

至此我们成功创建了新页面,并为其配置了路由和导航链接。演示如下:

在这里插入图片描述

下一步我们将继续学习Vue的基本语法和常用组件。

可能遇见的问题:报错:[vue/no-multiple-template-root] The template root requires exactly one element

点击打开 ——文件——首选项——设置

在这里插入图片描述进入设置页搜索 eslint 把Vetur的验证模板,取消勾选Validate vue-html in using eslint-plugin-vue 在这里插入图片描述
相关文章
|
13天前
|
缓存 JavaScript UED
Vue3中v-model在处理自定义组件双向数据绑定时有哪些注意事项?
在使用`v-model`处理自定义组件双向数据绑定时,要仔细考虑各种因素,确保数据的准确传递和更新,同时提供良好的用户体验和代码可维护性。通过合理的设计和注意事项的遵循,能够更好地发挥`v-model`的优势,实现高效的双向数据绑定效果。
116 64
|
13天前
|
JavaScript 前端开发 API
Vue 3 中 v-model 与 Vue 2 中 v-model 的区别是什么?
总的来说,Vue 3 中的 `v-model` 在灵活性、与组合式 API 的结合、对自定义组件的支持等方面都有了明显的提升和改进,使其更适应现代前端开发的需求和趋势。但需要注意的是,在迁移过程中可能需要对一些代码进行调整和适配。
|
20天前
|
缓存 JavaScript 前端开发
vue学习第四章
欢迎来到我的博客!我是瑞雨溪,一名热爱JavaScript与Vue的大一学生。本文介绍了Vue中计算属性的基本与复杂使用、setter/getter、与methods的对比及与侦听器的总结。如果你觉得有用,请关注我,将持续更新更多优质内容!🎉🎉🎉
34 1
vue学习第四章
|
20天前
|
JavaScript 前端开发
vue学习第九章(v-model)
欢迎来到我的博客,我是瑞雨溪,一名热爱JavaScript与Vue的大一学生,自学前端2年半,正向全栈进发。此篇介绍v-model在不同表单元素中的应用及修饰符的使用,希望能对你有所帮助。关注我,持续更新中!🎉🎉🎉
28 1
vue学习第九章(v-model)
|
19天前
|
JavaScript 前端开发 开发者
vue学习第十章(组件开发)
欢迎来到瑞雨溪的博客,一名热爱JavaScript与Vue的大一学生。本文深入讲解Vue组件的基本使用、全局与局部组件、父子组件通信及数据传递等内容,适合前端开发者学习参考。持续更新中,期待您的关注!🎉🎉🎉
33 1
vue学习第十章(组件开发)
|
25天前
|
JavaScript 前端开发 UED
vue学习第二章
欢迎来到我的博客!我是一名自学了2年半前端的大一学生,熟悉JavaScript与Vue,目前正在向全栈方向发展。如果你从我的博客中有所收获,欢迎关注我,我将持续更新更多优质文章。你的支持是我最大的动力!🎉🎉🎉
38 3
|
25天前
|
JavaScript 前端开发 开发者
vue学习第一章
欢迎来到我的博客!我是瑞雨溪,一名热爱JavaScript和Vue的大一学生。自学前端2年半,熟悉JavaScript与Vue,正向全栈方向发展。博客内容涵盖Vue基础、列表展示及计数器案例等,希望能对你有所帮助。关注我,持续更新中!🎉🎉🎉
50 2
|
25天前
|
JavaScript 前端开发
如何在 Vue 项目中配置 Tree Shaking?
通过以上针对 Webpack 或 Rollup 的配置方法,就可以在 Vue 项目中有效地启用 Tree Shaking,从而优化项目的打包体积,提高项目的性能和加载速度。在实际配置过程中,需要根据项目的具体情况和需求,对配置进行适当的调整和优化。
|
26天前
|
存储 缓存 JavaScript
在 Vue 中使用 computed 和 watch 时,性能问题探讨
本文探讨了在 Vue.js 中使用 computed 计算属性和 watch 监听器时可能遇到的性能问题,并提供了优化建议,帮助开发者提高应用性能。
|
26天前
|
存储 缓存 JavaScript
如何在大型 Vue 应用中有效地管理计算属性和侦听器
在大型 Vue 应用中,合理管理计算属性和侦听器是优化性能和维护性的关键。本文介绍了如何通过模块化、状态管理和避免冗余计算等方法,有效提升应用的响应性和可维护性。