Vue项目创建和使用

 快速上手 | Vue.js (vuejs.org)

nodejs.org/

        vue项目实质上是index.html页面和多个js文件的集合,最终解析后的html和js代码可以由浏览器解析运行:

                vue项目的创建,需要脚手架工具来搭建;

                在编译的源码阶段,文件格式为.vue  .json 的,这都是浏览器解析不了的;

                并且vue项目需要各种各样的依赖文件,如果手动下载也非常麻烦。

                所以需要了解各种各样的辅助工具来完成构建使用vue项目。

目录

 一、vue项目的创建:

   开发软件下载:

       依赖下载配置代理路径:

   创建方式一:

    0)参照官网快速创建的流程

    1)从文件资源管理器找个文件夹输入cmd进入:  ​编辑

    2)执行命令

   创建的其他方式:

二、vue项目的使用

0)vue项目的构成:

1)vue项目的运行:

1.0)一个.vue类型的文件分为三部分

1.1)启动服务

1.2)访问主界面: 

2)vue的组件使用:

        2.1)axios组件:

                1)依赖下载和配置:

                2)使用方式

        2.2)router组件:

                1)依赖下载

                2)配置:

                     2 .1)router.js创建router对象

                    2.2)引入router对象。


 一、vue项目的创建:

   开发软件下载:

           使用node.js 和 vs code,这两个软件一键安装就ok

           node.js版本通常选择18.3以上的稳定版本

       依赖下载配置代理路径:

           node.js的npm代理地址记得使用淘宝镜像源,在cmd中:

npm config set registry https://registry.npmmirror.com

       创建方式一:

0)参照官网快速创建的流程

   

1)从文件资源管理器找个文件夹输入cmd进入:  

2)执行命令
npm create vue@latest
cd vue-first  //进入创建的vue项目中
npm install
npm run dev

创建的其他方式:

         官网给出的创建方式一是轻量级的项目,默认vue3

        方式二是重量级的项目,并且可以选择创建vue2或者vue3,除了轻量级必要的配置还包含其它的配置,还默认给出了很多可能需要用到的依赖。

        方式三也是轻量级的项目,只不过除了创建vue框架,还可以创建其他框架。

               方式二:

npm install -g @vue/cli

vue create vue-demo2

               方式三:

npm init  vite@latest

二、vue项目的使用

          使用vscode打开创建好的vue项目

0)vue项目的构成:

        index.html :  

                项目的入口界面,也是整个前端项目的唯一界面。所有其他页面的内容都展示在

通过定位<div id = "app">标签嵌套在div界面中。所以也经常叫它SPA(单网页应用程序)。

         App.vue:

                  真正的主界面

         main.js:

                   vue的配置文件,通常用来引入配置类对象

         vue.config.js:

                  配置文件,设置路由和前端项目打包。

1)vue项目的运行:

1.0)一个.vue类型的文件分为三部分

        temple :

                view层,也就是html的标签对象存放位置

        script:

                moudel层,也就是数据,方法的对象存放的位置

        style:

                css样式。

        实质上.vue在解析后就是js文件;V,M层间通过MV中间件完成数据格式化最终转换为一堆html标签。

<template><template>
<script></script>
<style></style>    
1.1)启动服务

             终端运行命令   npm   run   serve   

1.2)访问主界面: 

<template>  //view
   <div>
        <input type="text" v-model="student.name">  //表单元素双向绑定数据使用v-model
        <hr>
        <a v-bind:href="url">点击跳转百度</a>   //非表单元素单向绑定使用v-bind
        <hr>
        <span v-html="加粗内容"></span>   //键入内容含标签元素
        <hr>
        <span v-if="score<100">我爱你饺子</span>
        <span v-else-if="score>1000">他爱你皮特</span>
        <span v-else>布鲁斯拔萝卜</span>
        <hr>
        <li v-for="age1 in student.age" :key="age1" >{{age1}}</li> 
        <hr>
        <input type="button" value="展示数据" @click="show">
        <hr>
        <input type="button" @click="testPost" value="axios">
        <hr>
   <div>
    <!-- <router-link to="/">Login</router-link> -->
    <router-link to="/add">Add</router-link>  //路由跳转
    <router-view></router-view>  //路由跳转页面显示位置
  </div>
        <HelloWorld></HelloWorld>   
   </div>
</template>

<script>    //model
import HelloWorld from   '@/components/HelloWorld.vue'
import qs from "qs"

export default{
   components:{
   HelloWorld
},
   data(){
    return{
        student:{
        name:"张三",
        age:5
        },
        url:"https://www.baidu.com",
        加粗内容:"<b>我不喜欢钱</b>",
        score:999
    }
   },
   methods:{
    show(){
      alert(JSON.stringify(this.student))
    }
   ,
   testPost(){
       this.$axios({
         url:"/demo",
        method:"post",
         data:qs.stringify({ //使用qs.stringify({}) 将json数据转换为普通的键值对表单数据,后端单元方法直接声明形参接收
                             //不使用qs.stringify({}) 直接发送请求体格式的请求数据,后端单元方法必须使用@RequestBody注解来接收
           name:'张三',
           age:20
         }) 
       }).then(res=>{console.log(res)})
      }
   }
}
</script>

<style>

</style>

2)vue的组件使用:

        2.1)axios组件:
                1)依赖下载和配置:
npm install --save axios
npm install --save querystring
                2)使用方式

                axios的post请求默认传参为json格式,如果想和get一样使用url上的键值对匹配需要用到qs模块转换json数据。

   testPost(){
       this.$axios({
         url:"/demo",
        method:"post",
         data:qs.stringify({ //使用qs.stringify({}) 将json数据转换为普通的键值对表单数据,后端单元方法直接声明形参接收
                             //不使用qs.stringify({}) 直接发送请求体格式的请求数据,后端单元方法必须使用@RequestBody注解来接收
           name:'张三',
           age:20
         }) 
       }).then(res=>{console.log(res)})
      }
        2.2)router组件:

               router模块用来设置服务器代理路径。

                1)依赖下载
npm install --save vue-router
                2)配置:

                需要在main.js文件中引入router对象,还要配置router对象的相关参数,一般单独创建一个文件配置router对象,再在main.js中引入router对象。

                     2 .1)router.js创建router对象

//从vue-router中导入createRouter和createWebHashHistory两个函数
import { createRouter, createWebHashHistory} from 'vue-router'
//创建routes对象存储映射表
const routes=[
    //配置映射
    {
        path:'/',
        name:'Login',
        component:()=>import('../view/MyLogin.vue')
    },
    {
        path:"/add",
        name:'Add',
        component:()=>import('../view/MyAdd.vue')
    }
]
//创建router对象
const router=createRouter({
    history:createWebHashHistory(),
    routes:routes
})
export default router
                    2.2)引入router对象。

                 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

集团数字化转型方案(十二)

集团数字化转型方案致力于通过构建一个集成化的数字平台&#xff0c;全面应用大数据分析、人工智能、云计算和物联网等前沿技术&#xff0c;推动业务流程、管理模式和决策机制的全面升级。该方案将从业务流程的数字化改造开始&#xff0c;优化资源配置&#xff0c;提升运营效率…

MySQL的源码安装及基本部署(基于RHEL7.9)

这里源码安装mysql的5.7.44版本 一、源码安装 1.下载并解压mysql , 进入目录: wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.44.tar.gz tar xf mysql-boost-5.7.44.tar.gz cd mysql-5.7.44/ 2.准备好mysql编译安装依赖: yum install cmake g…

牛客网习题——通过C++实现

一、目标 实现下面4道练习题增强C代码能力。 1.求123...n_牛客题霸_牛客网 (nowcoder.com) 2.计算日期到天数转换_牛客题霸_牛客网 (nowcoder.com) 3.日期差值_牛客题霸_牛客网 (nowcoder.com) 4.打印日期_牛客题霸_牛客网 (nowcoder.com) 二、对目标的实现 1.求123...n_…

杰发科技AC7840——CAN通信简介(8)_通过波特率和时钟计算SEG_1/SEG_2/SJW/PRESC

通过公式计算 * 波特率和采样点计算公式&#xff1a;* tSeg1 (S_SEG_1 2); tSeg2 (S_SEG_2 1).* BandRate (SCR_CLK / (S_PRESC 1) / ((S_SEG_1 2) (S_SEG_2 1))), SCR_CLK 为CAN 模块源时钟* SamplePoint (tSeg1 / (tSeg1 tSeg2)). {0x0D, 0x04, 0x04, 0x3B},…

[创业之路-140] :生产 - 生产流程概述

目录 前言&#xff1a; 一、生产流程的基本框架 二、生产流程的关键要素 前言&#xff1a; 生产流程是一个广泛的概念&#xff0c;它涵盖了从原材料投入到成品产出的全过程。 这个过程在不同行业和领域中有所不同&#xff0c;但通常都包括一系列有序的步骤和环节。 以下是…

WIN 10 添加右键菜单(VSCode 打开当前目录)

WIN 10 添加右键菜单&#xff08;VSCode 打开当前目录&#xff09; 前言最终效果操作步骤 前言 每次打开代码都需要先打开 VSCode&#xff0c;再选择最近打开的项目或者浏览打开项目&#xff0c;感觉比较难找。所以自己添加了右键命令。 最终效果 操作步骤 cmd 打开注册表 找…

C语言程序设计(初识C语言后部分)

十七&#xff0c;数组 1.一维数组的创建和初始化 1&#xff09;数组的创建 数组是一组相同类型元素的集合 数组的创建方式&#xff1a; type_t arr_name [const_n]; //type_t 是指数组的元素类型 //const_n 是一个常量表达式&#xff0c;用来指定数组大小 …

R语言统计分析——回归分析的改进措施

参考资料&#xff1a;R语言实战【第2版】 如果在回归诊断中发现了问题&#xff0c;我们该如何做&#xff1f;有四种方法可以处理违背回归假设的问题&#xff1a; ①删除观测点&#xff1b; ②变量变换&#xff1b; ③添加或删除变量&#xff1b; ④使用其他回归方法。 1、…

C语言 ——— 常见的动态内存错误(下篇)

目录 使用free释放一块动态开辟内存的一部分 对同一块动态内存多次释放 动态开辟内存忘记释放&#xff08;内存泄漏&#xff09; 使用free释放一块动态开辟内存的一部分 代码演示&#xff1a; // 动态开辟10个整型空间 int* p (int*)malloc(sizeof(int) * 10);// 判断是…

Pod基础使用

POD基本操作 1.Pod生命周期 在Kubernetes中&#xff0c;Pod的生命周期经历了几个重要的阶段。下面是Pod生命周期的详细介绍&#xff1a; Pending&#xff08;待处理&#xff09;: 调度: Pod被创建后&#xff0c;首先进入“Pending”状态。此时&#xff0c;Kubernetes的调度器…

机器视觉运动控制一体机VPLC532E在汽车胶带缠绕的开放式CNC应用

市场应用背景 在汽车线束和零配件中&#xff0c;胶带缠绕是一种常见且重要的加工工艺&#xff0c;主要用于线束/零配件的捆扎、固定、绝缘保护等应用。在缠绕头控制下&#xff0c;胶带均匀缠绕在汽车线束/零配件表面&#xff0c;完成缠绕后&#xff0c;系统自动执行切割。汽车…

【CSS】使用 CSS 自定义属性(变量)-- var()

自定义属性&#xff08;有时候也被称作CSS 变量或者级联变量&#xff09;是由 CSS 作者定义的&#xff0c;它包含的值可以在整个文档中重复使用。由自定义属性标记设定值&#xff08;比如&#xff1a; --main-color: black;&#xff09;&#xff0c;由 var() 函数来获取值&…

qtsql连接达梦数据库

odbc window和linux都有odbc的中间件&#xff0c;可以通过odbc中间件配合qtsql连接数据库 windows下配置odbc linux配置odbc apt install unixodbc unixodbc-dev /etc/odbcinst.ini配置 [DM8 ODBC DRIVER] DescriptionDM8 ODBC Driver DRIVER/opt/dmdbms/bin/libdodbc.so/et…

安装打印机提示“打印后台程序服务没有启动”的解决方法

1、在桌面选中“我的电脑”&#xff0c;鼠标右键选择“管理”&#xff1b; 2、在“管理”窗口中&#xff0c;选取“服务和应用程序”扩展项目下的“服务”选项&#xff08;如图&#xff09;&#xff0c;在右侧出现系统服务列表中找到“Print Spooler”服务&#xff0c;双击进入…

JavaWeb基础 -- Servlet

JavaWeb基础 – Servlet 1.Servlet简介 1.1 Servlet是什么 Servlet本身是用Java编写的&#xff0c;运行在Web服务器上的应用程序&#xff0c;并作为Web浏览器和其他HTTP客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。Servlet可以收集来自网页表单输入的数据…

ARM 裸机与 Linux 驱动对比及 Linux 内核入门

目录 ARM裸机代码和驱动的区别 Linux系统组成 内核五大功能 设备驱动分类 内核类型 驱动模块 驱动模块示例 Makefile配置 命令 编码辅助工具 内核中的打印函数 printk 函数 修改打印级别 ​编辑 打印级别含义 驱动多文件编译 示例 模块传递参数 命令行传递参数…

【机器学习】经典CNN架构

第一章:引言 1.1 研究背景 机器学习的发展历程 机器学习作为人工智能的重要分支,其发展历程可以追溯到20世纪50年代。初期的机器学习研究主要集中在规则系统和基本的统计学习方法上。随着计算能力的提升和数据的积累,机器学习逐渐发展出更为复杂的算法和模型。20世纪80年…

7.添加购物车以及完善导航条跳转

添加购物车 一、引言二、前端2.1引入轻组件2.2为图片添加点击事件2.3创建addShoppingCart函数 三、后端四、运行效果五、导航条跳转 一、引言 在前几篇文章中&#xff0c;我们一步一步慢慢的实现了项目的建立&#xff0c;从数据库获取数据显示在页面&#xff0c;商品大图查看&…

C++ JAVA源码 HMAC计算 openssl 消息认证码计算 https消息防篡改 通信安全

签名和验签 把所有消息按顺序合并成一条信息&#xff0c;对这个信息用密钥进行签名。 签名信息通过 HTTP 头 Sign 传递&#xff0c;没有携带签名或者签名验证不通过的请求&#xff0c;将会被认为异常请求&#xff0c;并返回相应 code 码。 校验方法&#xff1a;根据 http请求…

国产3A游戏《黑神话悟空》中AI绘画技术的运用与探索

导语&#xff1a;近年来&#xff0c;我国游戏产业不断发展&#xff0c;越来越多的国产游戏开始尝试运用AI技术&#xff0c;以提升游戏品质。其中&#xff0c;国产3A游戏《黑神话悟空》便在原画设计过程中&#xff0c;巧妙地运用了AI绘画技术。本文将带你了解《黑神话悟空》如何…