vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

这篇具有很好参考价值的文章主要介绍了vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

阿丹:

        前面的文章已经进行了vue的组件安装,本篇文章来了解一下vue的语句语法以及element-ui的具体用法。并使用全局的守卫路由来完成用户完成登录来请求头携带token

导入axios以及导入element-ui

按照图片指引来到main.js将我们前面文章下载的组件进行导入

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

import Element from 'element-ui'  //引入element-ui
import axios from 'axios'  //引入axios
Vue.use(Element)		//使用element-ui
Vue.prototype.axios = axios; //使用axios
import 'element-ui/lib/theme-chalk/index.css';

代码解读:

这是一段 Vue.js 代码片段,它通过引入 element-ui 和 axios 库并将其绑定到 Vue 上,来扩展 Vue 的功能。

具体来说,这段代码首先使用 import 语句从文件系统中引入 element-ui 和 axios 库,然后将 Element 对象绑定到 Vue 上,以便在Vue实例中使用 element-ui 的组件。使用 Vue.use(Element) 表示将 Element 对象注册为 Vue 插件。然后,通过 Vue.prototype.axios = axios ,将 axios 库绑定到 Vue.prototype 上,使得在 Vue 实例中所有地方都可以使用 axios,而不必重复引入。

最后,通过 import 'element-ui/lib/theme-chalk/index.css' 语句引入 element-ui 的 CSS 样式表,以适用于应用程序中的所有组件。

在vue中新建一个页面并给与路由跳转

上面我们新建了一个vue项目,现在运行的时候发现是一个初始化页面,我们现在开始动手获得一个自己自定义的页面

1、创建一个新的vue页面

在components文件夹下面创建一个属于自己的页面 

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

 vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

 2、新建了一个adsvue.vue的页面

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

 我们能看到默认的页面中有一些自己生成的代码。我们来了解一下

是一个Vue的组件文件,包括模板、脚本和样式部分。Vue是一种流行的JavaScript框架,用于构建交互式Web应用程序。模板部分描述了页面的布局和组件之间的关系,脚本部分包含Vue组件的逻辑,而样式部分则定义了组件的外观和样式

我们注意到

export default{

        name:"adsvue"
}

在Vue组件中,name选项是组件的名称。如果你使用了Vue的单文件组件(.vue文件),那么组件的名称无需设置,系统会自动生成。但如果你使用的是vue.js,就需要手动指定name属性,作为唯一标识一个组件,用于调试与渲染。举个例子,如果在其他组件中引用了这个组件,那么就可以使用"name"来引用这个组件,而不是用组件的路径。这样可以更方便地管理组件,并且可以提高代码的可读性。

3、使用vue的一个模版来快速的帮助开发

下面是一个帮助快速开发的vue模版,如果有需求需要使用上面的使用名字来调用的话可以加入上面的代码。

<template>
  <div></div>
</template>

<script>
//这里可以导入其他文件(比如:组件,工具js,第三方插件js,json文件,图片文件等等),
//例如:import 《组件名称》 from '《组件路径》,
  export default {
    //import引入的组件需要注入到对象中才能使用"
    components: {},
    props: {},
    data() {
      //这里存放数据"
  
      return {};
    },
    //计算属性 类似于data概念",
    computed: {},
    //监控data中的数据变化",
    watch: {},
    //方法集合",
    methods: {},
    //生命周期 - 创建完成(可以访问当前this实例)",
    created() {
    },
    //生命周期 - 挂载完成(可以访问DOM元素)",
    mounted() {
    },
    beforeCreate() {
    }, //生命周期 - 创建之前",
    beforeMount() {
    }, //生命周期 - 挂载之前",
    beforeUpdate() {
    }, //生命周期 - 更新之前",
    updated() {
    }, //生命周期 - 更新之后",
    beforeDestroy() {
    }, //生命周期 - 销毁之前",
    destroyed() {
    }, //生命周期 - 销毁完成",
    activated() {
    } //如果页面有keep-alive缓存功能,这个函数会触发",
  };
</script>
<style scoped>

</style>

现在我们已经拥有了一个属于自己的vue页面,但是我们发现无法通过路径等去访问到我们这个页面,那么我们需要将这个vue页面添加在路由中。那么我就能使用路径来访问到这个页面了。

4、将vue项目添加入路由

这个就是路由的配置页面

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

能看到现在只有helloworld一个页面

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

将我们的页面添加进入导入了页面 

 vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

创建对于这个vue项目的路由 

 vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

这段代码是用来定义Vue Router路由的一个路由对象,其中path属性是路由的路径,name属性是路由名称,component属性是路由对应的组件。

  • path:表示可以匹配到这个路由的路径
  • name:表示当前路由的名称,用于与其他路由区分开来
  • component:指定路由渲染的组件,可以通过import adsvue from '@/components/adsvue.vue'引入adsvue组件,然后将它设置为component的值。

现在简单的路由已经介绍完毕了。我们现在我们自定义的页面上写一点东西,我们演示一下效果。 

可以看到vue页面可以正常的打开。

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

如果想访问我们自己的页面就需要在上面的路径上输入对应页面的路径

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

现在属于我们的页面就跳转出来了。 

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

 现在开始路由的重点

守卫路由

阿丹:

之前在写jsp页面项目的时候拦截器大部分在后台写的,vue中可以在前台完成这样的效果。

简单介绍一下vue中守卫路由:

Vue中的路由守卫是一个函数,在进行路由导航时会被调用,用于控制是否允许进行导航。可以使用它进行权限控制、路由拦截、数据预处理等操作。Vue Router提供了多种类型的路由守卫:

  • 全局守卫:这些守卫被注册在Vue Router实例上,对所有路由生效。可以用来处理用户登录状态、路由拦截、页面切换前的处理等。包括beforeEach、beforeResolve、afterEach等。
  • 路由独享守卫:这些守卫被注册在路由配置上,只对当前路由生效。可以用来处理当前路由的权限问题、数据预处理等。包括beforeEnter等。
  • 组件内守卫:这些守卫被注册在具体的组件中,只对当前组件生效。可以用来处理组件内路由的生命周期。包括beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave等。

使用守卫可以很方便地控制路由的跳转,并在此过程中进行其他操作,避免用户恶意操作和不当使用带来的问题。

全局守卫路由

全局守卫路由,分为三种,用于

全局守卫: 

全局前置守卫,

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

前置守卫是在用户进行全局访问前进行出发,可完成操作有:

        1、校验是否请求头携带token

        2、全局请求头挂载token

        等 


router.beforeEach((to, from, next) => {
  console.log('')
  next()
}

后置路由守卫

这个功能主要用于收集用户的操作数据以及进行数据分析和日志记

 后置守卫的业务场景

  1. 统计用户停留时间:在用户离开页面时执行一个定时器,记录用户在该页面停留的时间,并将这些数据发送到服务器端进行分析。

  2. 记录用户操作轨迹:使用后置路由守卫跟踪用户在网站中的操作路径,然后记录这些数据以便日后分析。这个功能可以帮助开发人员改进用户界面的设计和用户体验。

  3. 页面错误监控:通过监听后置路由守卫,开发人员可以及时发现页面上出现的错误和异常情况,并在第一时间内向用户展示错误信息。

  4. 登录态检查:通过后置路由守卫检查用户是否登录,然后根据用户的登录状态决定是否跳转到登录页面。


router.afterEach((to, from, next) => {
  console.log('')
  next()
}

 全局解析守卫

全局解析守卫是 Vue 中的一种全局钩子函数,它可以在路由解析被触发之前进行处理,常用于路由中的数据预取或其他需要在路由解析前执行的逻辑。下面是一些可能需要使用全局解析守卫的业务场景:

  1. 数据预取:在路由解析前,使用全局解析守卫预先获取页面所需的数据,以便提高页面加载速度和用户体验。

  2. 权限控制:使用全局解析守卫根据用户权限信息判断当前用户是否有权限进入某个页面,从而进行页面授权管理。

  3. 多语言支持:可以使用全局解析守卫在路由解析前根据用户所选语言版本,在页面上做出相应的显示和语言切换。

  4. 节流控制:当应用的某个页面需要频繁更新和请求数据时,可以使用全局解析守卫控制请求的节奏,防止频繁请求数据造成服务器压力过大。


router.beforeResolve((to, from, next) => {
  console.log()
  next()
}

 注意补充顺序:

beforeEach------------------->beforeEnter------------->beforeRouterEnter------------->beforeResolve-------->affterEach

进入前置守卫--------------->读取路由信息-------------->进入组件---------------->进行解析------------>

进入后置守卫

参数说明:

1.to 表示要去哪里

2.from  表示从哪里来

3.next  表示是否方向

阿丹在这里只介绍了一部分路由需要的可自行百度

axios在vue的使用

阿丹:

        其实看起来axios很陌生在但是它在jsp中的名字叫做ajax。是不是一下子就熟悉起来了。

但是和jsp中有区别的是:

        在jsp中大概率我们发布和生产的环境是打成了一个war包,也就是意味着在运行的时候出现的是一个项目中前台和后台相互的访问。也就是一体的。这里就不牵扯到一个致命的问题:跨域

那么在vue中的axios中访问去发送请求有两种方式:

通过这个指令来安装axios 

npm install --save axios

        1、直接将路径输入,直接对路径发送进行请求。

        2、通过在配置文件中书写代理通常是/api来转发请求。

        在处理和使用两个方法的时候就要涉及跨域问题了。

        在开始我们的vue路途上我们先将跨域问题来进行解决。

在讲解开始前先说明一下我的后台的相关接口等

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

这里port说明我的后台处理接口为10001。也就是说需要向后台传送请求的时候就需要将ip+10001+路径就可以将数据请求达到后台服务器。

vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送

直接将路径输入来发送请求时:

请求的路径为https://ip+:后台端口/请求路径

axios.get(url).then(
res=>{

    }
)

axios.post(url,this.form).then(
res=>{

    }
)

参数说明

url是字符串形式可以使用字符串拼接来拼接请求路径

当请求方法为post的时候有两个参数,第一个参数为请求路径,第二个参数为向后台传递的表单。

res为请求之后的返回值可使用控制台打印来查看返回值结构。然后使用

this.需要赋值的对象 = res.根据结构来拿取需要的内容文章来源地址https://www.toymoban.com/news/detail-500009.html

到了这里,关于vue+element-ui初体验入门拥有自己的前台项目以及配置文件讲解(2)组件式开发,路由,请求发送的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue element-ui 常用事件方法

    已安装 elementUI 并正确引入 参数 说明 :action 是执行上传动作的 后台接口 ,本文置空采用 http-request 取而代之拦截请求,进行文件上传 :multiple=\\\"true\\\" 设置 是否可以同时选中多个文件上传 ,这个也是input type=\\\'file\\\'的属性 :limit=\\\"1\\\" 上传文件数量,设置 最多可以上传的文件数量 ,

    2023年04月14日
    浏览(40)
  • Element-ui配合vue上传图片

    这里为大家介绍饿了吗ui配合vue封装一个图片上传的组件  首先大家先看一个饿了吗ui文档的各个钩子函数的介绍! on-preview这个属性我们一般用来预览图片时使用 on-remove这个属性时文件被删除时执行 一般我们在这里面进行数组的筛选 让它保证为最新数组 on-change当文件被选择

    2024年02月09日
    浏览(58)
  • vue怎么安装element-ui教程

    1.在项目中打开cmd命令窗口,输入命令---- npm i element-ui -S命令 图1 安装成功: 图2 2.安装成功,将其引入到自己的项目中,具体操作步骤如下: 在main.js文件中 引入 element 组件  : import ElementUI from \\\'element-ui\\\' import \\\'element-ui/lib/theme-chalk/index.css\\\'  Vue.use(ElementUI) 图3 (1)如何判断

    2023年04月18日
    浏览(27)
  • Vue Element-ui表单校验规则

      Element-ui表单校验规则,使得错误提示可以直接在form-item下面显示,无需弹出框,因此还是很好用的。   我在做了登录页面的表单校验后,一度以为我已经很了解表单的校验规则。但我在深入使用表单校验规则时,遇到下列问题: 如何判断属性值是否在某个范围内,且

    2024年02月03日
    浏览(72)
  • 【VUE】4、VUE项目中引入Element-UI

    1、element-ui 官方文档(中文版) 2、安装 element-ui 1、进入项目目录下 2、安装 element-ui 注意: VUE2 使用的是 element-ui,VUE3 使用的是 element-plus 3、引入 element-ui(完整引入) 1、打开 main.js 文件 在 main.js 文件中,引入 element-ui 2、注册 element-ui 以上代码便完成了 Element 的引入。需

    2024年02月01日
    浏览(40)
  • 【Vue框架】Vue2中element-ui/mint-ui组件库——element-ui引入组件以及使用案例、mint-ui引入组件及使用案例

    element-ui 提供了大量的组件,如:布局组件、表单组件、JS组件等等。 Element-ui官网: https://element.eleme.cn/#/zh-CN 安装 Element-ui: npm i element-ui -S 1.1.1 引入组件 引入 Element 完整引入(在 main.js 中写入以下内容): 按需引入 借助 babel-plugin-component,我们可以只引入需要的组件,以达到

    2024年02月07日
    浏览(41)
  • vue element-ui响应式布局(记录)

    1.可以实现Vue移动端和PC端的响应式布局适配 实现方法:通过 postcss-px-to-viewport 来自动将我们开发时的px单位计算转换为vw/rem视口单位,完成响应式布局 。 安装插件 PC端适配,在项目根目录下创建 postcss.config.js 配置文件 移动端适配,也是在根目录下创建 postcss.config.js 配置文件

    2024年02月11日
    浏览(27)
  • Vue2.0安装Element-ui

    1.在项目终端输入 如果想知道是否安装成功   2.随后在main.js里引入element组件 然后去使用element   就这样成功了  

    2024年02月16日
    浏览(32)
  • vue:element-ui表单动态验证规则

    实现当是否发送消息选择是时,业务类型字段必填。 当你在一个表单中使用 el-form 和 el-form-item 来创建表单项时, el-form-item 的 :rules 属性可以用来设置该表单项的验证规则。我们希望根据用户在 \\\"是否发送消息\\\" 这个表单项中的选择动态设置 \\\"业务类型\\\" 这个表单项的验证规则

    2024年01月23日
    浏览(33)
  • Vue Element-ui Table表格排序

    一.表格中有时候会有排序的需求,如果只针对当前页进行排序,那么前端就可以实现排序,在对应需要排序的字段中,使用sortable字段即可。 二.存在分页的情况时,前端仅仅使用sortable当前页排序已经不能满足我们的需求,无法对所有数据进行排序。这时候我们就要使用后端

    2024年02月11日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包