Vue项目搭建

devtools/2024/9/21 11:26:35/

Vue项目搭建

  • Vue
    • 一、创建项目
    • 二、Element
    • 三、添加Axios组件
      • 请求方法的别名
    • 四、vue文件的生命周期
    • 五、vue组件相关属性

Vue

vue是JavaScript的一个框架

快速创建vue项目的先决条件:安装node.js

一、创建项目

vue ui

  • 这样创建项目的优点
  1. 统一的目录结构
  2. 本地调试
  3. 热部署
  4. 单元测试
  5. 集成打包上线
  • 项目创建成功时,浏览器显示如下画面

在这里插入图片描述

对于vue项目,index.html文件默认是引入了入口函数main.js文件,我们找到src/main.js文件,其代码如下:

import Vue from 'vue'
import App from './App.vue'
import router from './router'Vue.config.productionTip = falsenew Vue({router,render: h => h(App)
}).$mount('#app')

上述代码中,包括如下几个关键点:

  • import: 导入指定文件,并且重新起名。例如上述代码import App from './App.vue'导入当前目录下得App.vue并且起名为App
  • new Vue(): 创建vue对象
  • $mount(‘#app’);将vue对象创建的dom对象挂在到id=app的这个标签区域中,作用和之前学习的vue对象的le属性一致。
  • router: 路由,详细在后面的小节讲解
  • render: 主要使用视图的渲染的。

二、Element

  • 安装Element 注意,需要在项目所在终端安装,选择项目并右键打开终端,然后输入如下安装命令

    在这里插入图片描述

    npm i element-ui -S

    安装成功后,就能node_modules文件夹中看见如下文件夹

    在这里插入图片描述

  • 使用Element

    //在 main.js 中写入以下内容:
    import ElementUI from 'element-ui';
    import 'element-ui/lib/theme-chalk/index.css';
    //import locale from 'element-ui/lib/locale/lang/en' 使用英文,Element默认使用中文
    Vue.use(ElementUI);
    
  • 更改显示界面

注意,新创建的vue.组件需要使用大驼峰命名法以防止出错,再src/views目录下创建一个element文件夹存放添加的vue文件,注意,vue文件需要有一个View来结尾,所以vue文件的文件名格式应该为 xxxView.vue

<!-- App.vue -->
<template><div><!-- 更改显示界面 假设有一个名为ElementView.vue的文件,则添加如下代码--><Element-view></Element-view></div>
</template><script>
/* 导入ResumeView.vue文件 */
import ElementView from './views/element/ResumeView.vue'
export default {components: {ElementView}}
</script>
<style></style>
  • components 通常是在父级组件中定义的,使得父组件可以包含一个或多个子组件。每个组件都可以包含自己的模板、逻辑和样式(可以简单理解为一个界面),并且可以独立于其他组件进行开发和维护。

以上为导入示例

vue文件的三个基本格式

  • templete
  • script
  • style
<!-- 需要在根组件app.vue中引入才能使用 -->
<template><div><el-row><el-button>默认按钮</el-button><el-button type="primary">主要按钮</el-button><el-button type="success">成功按钮</el-button><el-button type="info">信息按钮</el-button><el-button type="warning">警告按钮</el-button><el-button type="danger">危险按钮</el-button></el-row></div>
</template><script>
export default {}
</script><style></style>

在这里插入图片描述

三、添加Axios组件

我们使用Axios向服务器(后端)发送请求,并接收服务器(后端)发送回来的数据

  • 安装axios库,安装操作与Element安装过程相同
npm install axios

安装成功后,就能node_modules文件夹中看见如下文件夹
在这里插入图片描述

<!-- 在你的vue文件中导入axios -->
import axios from 'axios';

在这里插入图片描述

  • axios的使用
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Ajax-Axios</title><script src="js/axios-0.18.0.js"></script>
</head>
<body><input type="button" value="获取数据GET" onclick="get()"><input type="button" value="删除数据POST" onclick="post()"></body>
<script>//更多写法function get(){//封装成一个函数//通过axios发送异步请求-getaxios({method: "get",url: "http://yapi.smart-xwork.cn/mock/169327/emp/list"}).then(result => {console.log(result.data);})}function post(){// 通过axios发送异步请求-postaxios({method: "post",url: "http://yapi.smart-xwork.cn/mock/169327/emp/deleteById",data: "id=1"}).then(result => {console.log(result.data);})}
</script>
</html>

请求方法的别名

Axios还针对不同的请求,提供了别名方式的api,具体如下:

方法描述
axios.get(url [, config])发送get请求
axios.delete(url [, config])发送delete请求
axios.post(url [, data[, config]])发送post请求
axios.put(url [, data[, config]])发送put请求
axios.post('http://localhost:8088/delete', requestData, {headers: {'Content-Type': 'application/json'}}).then(res => {console.log("删除成功:", res.data);this.form.name = '';onsubmit();}).catch(error => {console.error("删除失败:", error);});console.log('Deleting', row);this.contextMenu.visible = false;}

代码解释:

  • axios.post: Axios 是一个基于 Promise 的 HTTP 客户端,用于浏览器和 node.js

  • post:发送一个 POST 请求。POST 请求通常用于向服务器发送数据

  • 链接: 请求发送到的服务器地址,localhost 指的是本地机器,8088 是服务器上运行服务的端口号,/delete 是处理请求的服务器上的特定路径。

  • requestData:发送到服务器的数据

  • headers:设定了HTTP请求头,我们将数据JSON格式发送给后端(服务器)

  • then(res => {…})then 方法用于处理 Promise(POST请求) 成功的情况,服务器的响应会作为 res (response) 参数传入,res.data保存了服务器返回的数据

  • catch(error => {…}):处理请求失败的情况。如果请求出现错误(如网络问题、服务器错误等),则会捕捉到错误对象 error。这里的代码打印了一个错误消息。

四、vue文件的生命周期

mounted()函数,再vue文件挂载完成之前产生,我们利用这个生命周期使用Axios发送异步请求以获得数据,加载页面信息,该函数与datamenthons同级

  • 在vue页面显示之前向后端发送一个请求
 mounted() {this.myresumemsg.name = this.form.name;axios.post('http://localhost:8088/submit', this.myresumemsg, {headers: {'Content-Type': 'application/json'}}).then(res => {this.myresumemsg = res.data[0]})}

五、vue组件相关属性

属性/指令说明
v-model双向绑定数据到表单元素
v-if根据表达式的真值来条件性地渲染元素
v-elsev-if的补充,当v-if为假时渲染
v-show根据表达式真值切换元素的显示状态(通过display样式)
v-for基于源数据多次渲染元素或模板
v-on监听DOM事件,并在触发时执行一些JavaScript代码
v-bind动态地绑定一个或多个特性,或一个组件 prop 到表达式
:key给每个节点或组件提供一个唯一的键,用于Vue的虚拟DOM算法内部
v-slot定义插槽的内容
v-pre跳过这个元素和它的子元素的编译过程
v-cloak在Vue实例结束编译时从绑定的HTML元素上移除
v-bind动态地绑定一个或多个特性,或一个组件 prop 到表达式
:key给每个节点或组件提供一个唯一的键,用于Vue的虚拟DOM算法内部
v-slot定义插槽的内容
v-pre跳过这个元素和它的子元素的编译过程
v-cloak在Vue实例结束编译时从绑定的HTML元素上移除
v-once只渲染元素和组件一次。之后的重新渲染,元素/组件及其所有的子节点将被视为静态

http://www.ppmy.cn/devtools/18380.html

相关文章

抓住四月小尾巴,拿个offer~

首先声明一下~本人是个双非二本大三在校生。 从三月份就开始了苦哈哈的找实习之旅&#xff0c;快三月中旬才敢投大厂&#xff0c;为什么嘞&#xff1f;因为学校要求必须参加完期末考试才能出去实习&#xff08;差不多七月初&#xff09;&#xff0c;因为这个好多公司一听就不安…

如何在 Linux 和 Mac 终端命令中添加别名

在本文中&#xff0c;我们将探讨一种简单的技巧&#xff0c;可以节省您在终端中输入重复命令的时间。 作为开发者&#xff0c;我们花费大量时间在终端上执行命令。无论是浏览目录、运行脚本、更改 Node.js 版本还是版本控制命令&#xff0c;手动输入每个命令都是一项耗时的任务…

stm32开发之netxduo组件之mqtt客户端的使用记录

前言 1使用mqtt协议的简单示例记录 代码 MQTT服务端(C# 编写,使用MQTTnet提供的示例代码) 主程序 namespace ConsoleApp1;public class Program {public static async Task Main(string[] args){await Run_Server_With_Logging();}}public static async Task Run_Server_Wi…

B站秒杀项目学习心得

项目地址&#xff1a;B站大学 特别鸣谢&#xff1a;某大佬博客 在该项目中核心就是秒杀的实现&#xff1a;大量用户进行秒杀订单时不能超卖、同一用户不能重复抢 不能超卖在doSeckill1中通过update的排他性实现(乐观锁)。 //拿到秒殺商品TSeckillGoods seckillGoods itSecki…

flutter笔记-hello dart

文章目录 1. 搭建环境2. 运行官方首个程序3. AS中运行iOSAndroid 语法简述1. 变量常量字符串补充 2. 集合3. 函数关于可选报错&#xff1a;匿名函数 4. 特殊运算符5. 类 dart 包 1. 搭建环境 环境的搭建在window和mac都差不多&#xff0c;都是从官网下载对应操作系统对应版本的…

webpack热更新原理详解

文章目录 前言基础配置创建项目HMR配置 HMR交互概览HMR流程概述HMR实现细节初始化注册监听编译完成事件启动服务监听文件代码变化服务端发送消息客户端收到消息热更新文件请求热更新代码替换 问题思考 前言 刷新分为两种&#xff1a;一种是页面刷新&#xff0c;不保留页面状态…

水电气能耗管理云平台

安科瑞薛瑶瑶18701709087/17343930412 能耗管理云平台采用泛在物联、云计算、大数据、移动通讯、智能传感器等技术手段可为用户提供能源数据采集、统计分析、能效分析、用能预警、设备管理等服务&#xff0c;平台可以广泛应用于多种领域。

Beego框架学习流程方法

学习Beego框架的流程和方法可以大致分为以下几个步骤&#xff1a; 了解框架基础知识&#xff1a; 初步了解Beego框架的特性和优势&#xff0c;比如其模块化设计、高性能、以及采用Go语言的一些特性&#xff08;接口、结构体嵌入等&#xff09;。熟悉MVC&#xff08;Model-View-…