Vue2学习笔记のVue中的ajax

这篇具有很好参考价值的文章主要介绍了Vue2学习笔记のVue中的ajax。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

hello, 这篇文章是Vue2学习笔记的第四篇,也是第四章:Vue中的ajax。

Vue中的ajax

vue脚手架配置代理

方法一

在vue.config.js中添加如下配置:

devServer:{
  proxy:"http://localhost:5000"
}

说明:

1 优点:配置简单,请求资源时直接发给前端(8080)即可。
2.缺点:不能配置多个代理,不能灵活的控制请求是否走代理。
3.工作方式:若按照上述配置代理,当请求了前端不存在的资源时,那么该请求会转发给服务器 (优先匹配前端资源)

<template>
	<div>
		<button @click="getStudents">获取学生信息</button>
		<button @click="getCars">获取汽车信息</button>
	</div>
</template>

<script>
	import axios from 'axios'
	export default {
		name:'App',
		methods: {
			getStudents(){
				axios.get('http://localhost:8080/students').then(
					response => {
						console.log('请求成功了',response.data)
					},
					error => {
						console.log('请求失败了',error.message)
					}
				)
			},
            //加了开头
			getCars(){
				axios.get('http://localhost:8080/demo/cars').then(
					response => {
						console.log('请求成功了',response.data)
					},
					error => {
						console.log('请求失败了',error.message)
					}
				)
			}
		},
	}
</script>

方法二

编写vue.config.js配置具体代理规则:

module.exports = {
	devServer: {
      proxy: {
      '/api1': {// 匹配所有以 '/api1'开头的请求路径
        target: 'http://localhost:5000',// 代理目标的基础路径
        changeOrigin: true,
        pathRewrite: {'^/api1': ''}
      },
      '/api2': {// 匹配所有以 '/api2'开头的请求路径
        target: 'http://localhost:5001',// 代理目标的基础路径
        changeOrigin: true,
        pathRewrite: {'^/api2': ''}
      }
    }
  }
}
/*
   changeOrigin设置为true时,服务器收到的请求头中的host为:localhost:5000
   changeOrigin设置为false时,服务器收到的请求头中的host为:localhost:8080
   changeOrigin默认值为true
*/

说明:

1.优点:可以配置多个代理,且可以灵活的控制请求是否走代理。
2. 缺点:配置略微繁琐,请求资源时必须加前缀。

插槽

1 作用:让父组件可以向子组件指定位置插入html结构,也是一种组件间通信的方式,适用于 <strong style="color:red">父组件 ===> 子组件</strong>

2.分类:默认插槽、具名插槽、作用域插槽

3.使用方式:

  1. 默认插槽:

    父组件中:
            <Category>
               <div>html结构1</div>
            </Category>
    子组件中:
            <template>
                <div>
                   <!-- 定义插槽 -->
                   <slot>插槽默认内容...</slot>
                </div>
            </template>
    
  2. 具名插槽:

    父组件中:
            <Category>
                <template slot="center">
                  <div>html结构1</div>
                </template>
    
                <template v-slot:footer>
                   <div>html结构2</div>
                </template>
            </Category>
    子组件中:
            <template>
                <div>
                   <!-- 定义插槽 -->
                   <slot name="center">插槽默认内容...</slot>
                   <slot name="footer">插槽默认内容...</slot>
                </div>
            </template>
    
  3. 作用域插槽:

    理解:数据在组件的自身,但根据数据生成的结构需要组件的使用者来决定。(games数据在Category组件中,但使用数据所遍历出来的结构由App组件决定)

    具体编码:

    父组件中:
    		<Category>
    			<template scope="scopeData">
    				<!-- 生成的是ul列表 -->
    				<ul>
    					<li v-for="g in scopeData.games" :key="g">{{g}}</li>
    				</ul>
    			</template>
    		</Category>
    
    		<Category>
    			<template slot-scope="scopeData">
    				<!-- 生成的是h4标题 -->
    				<h4 v-for="g in scopeData.games" :key="g">{{g}}</h4>
    			</template>
    		</Category>
    子组件中:
            <template>
                <div>
                    <slot :games="games"></slot>
                </div>
            </template>
    		
            <script>
                export default {
                    name:'Category',
                    props:['title'],
                    //数据在子组件自身
                    data() {
                        return {
                            games:['红色警戒','穿越火线','劲舞团','超级玛丽']
                        }
                    },
                }
            </script>
    

(注意:以上的部分的.vue文件由于没有对应的.vue代码模板,代码由于无法高亮,所以选择了html格式)文章来源地址https://www.toymoban.com/news/detail-668548.html

到了这里,关于Vue2学习笔记のVue中的ajax的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 前端学习---vue2--指令修饰符详解

    写在前面: 前端感觉系统学起来还行,我也不晓得我是咋快速入门1个月就开始看实习公司代码的。然后现在开始系统复习,然后感觉有的封装的还可以,不过就是我不晓得,像这个指令修饰符,其实说逻辑难写,倒是也没有,就是简单不用自己写. 就像后端判断字符串是否为

    2024年02月14日
    浏览(24)
  • 学习vue2笔记

    vue.js与vue.runtime.xxx.js的区别: vue.js是完整版的Vue,包含:核心功能 + 模板解析器。 vue.runtime.xxx.js是运行版的Vue,只包含:核心功能;没有模板解析器。 因为vue.runtime.xxx.js没有模板解析器,所以不能使用template这个配置项,需要使用render函数接收到的createElement函数去指定具体

    2024年02月12日
    浏览(29)
  • vue2-3学习笔记

    动态构建用户界面的渐进式JavaScript框架 英文官网 中文官网 想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象; {{xxx}}中的xxx要写js表达式,且xxx可以自动读取到data中的所有属性; 一旦data中的数据发生改变,那么页面中用到该数据的地方也会自动更新; 注意区分

    2024年02月11日
    浏览(28)
  • Vue2学习笔记のVue核心

    hello,各位小伙伴们!前段时间学习了尚硅谷提供的Vue框架视频,真心感觉挺不错的。并记了相应的学习笔记,包括Vue2以及Vue3,接下来的几篇文章,就会发布这一系列的内容,今天是第一篇也是Vue2学习的第一章:Vue核心知识。文章可以会代码的部分多于文字的部分,因为我觉

    2024年02月11日
    浏览(29)
  • Vue2学习笔记のvue-router

    hello, 各位小伙伴,本文是Vue2学习笔记的第六篇:Vue-router。 路由 1.理解: 一个路由(route)就是一组映射关系(key - value),多个路由需要路由器(router)进行管理。 2. 前端路由:key是路径,value是组件。 1.基本使用 1.安装vue-router,命令: npm i vue-router@版本 注意:vue-router

    2024年02月11日
    浏览(22)
  • JavaWEB学习笔记(二)------HTTP、Servlet、会话、过滤器、监听器、Ajax、前端工程化

    目录 HTTP HTTP1.1 请求和响应的报文格式 请求报文 响应报文 常见状态响应码 Servlet  静态资源和动态资源 ​编辑  Servlet简介  Servlet开发流程 导入和响应头问题 url-pattern不同写法 url-pattern工作方式 Servlet注解方式配置 Servlet生命周期  Servlet继承结构 Servlet接口 GenerisServlet类 Ht

    2024年01月21日
    浏览(32)
  • 上手vue2的学习笔记4之搭建vue环境

    上手vue2的学习笔记2之安装nodejs和npm的踩坑经历 参考链接1:vue(2.0版本)安装步骤教程 参考链接2: MacOS 搭建一个vue项目(完整步骤) 1、安装vue2 2、创建一个基于 webpack 模板的新项目 过一会儿会得到 可以在cd的项目路径中查看刚刚创建的项目 3、安装依赖 安装完成之后,项目中会

    2024年02月16日
    浏览(33)
  • 前端学习---vue2--选项/数据--data-computed-watch-methods-props

    写在前面: vue提供了很多数据相关的。 简单的说就是进行双向绑定的区域。 vue实例的数据对象,会把data的数据转换成getter和setter,从而可以进行响应式的变化, vue实例创建后,可以通过vm.$data.x获取data里面的x,但同时vue实例也代理了其中的对象,所以我们一般使用简单的

    2024年02月14日
    浏览(33)
  • 上手vue2的学习笔记3之vue和ui框架的关系

    在学习vue的时候,我的导师给我提供了三个链接 前端框架: Vue2:https://v2.cn.vuejs.org/v2/guide/ UI框架: tdesign:https://tdesign.tencent.com/vue/ elementui:https://element.eleme.cn/ 当时脑海里就一个问题:这都是啥啊?? 那现在就让我们一起揭秘一下吧。 解释来自于网络。 前端框架是为了简

    2024年02月12日
    浏览(35)
  • Vue学习笔记(黑马前端)

    Vue阶段作业地址 Vue 快速上手 Vue 概念 / 创建实例 / 插值表达式 / 响应式特性 / 开发者工具 Vue 指令 v-html / v-show / v-if / v-else / v-on / v-bind / v-for / v-model 综合案例 - 小黑记事本 列表渲染 / 删除功能 / 添加功能 / 底部统计 / 清空 Vue 是什么 概念:Vue 是一个用于 构建用户界面 的 渐

    2024年04月15日
    浏览(66)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包