关于Vue前端接口对接的思考

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

Survive by day and develop by night.
talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive.
happy for hardess to solve denpendies.

目录

关于Vue前端接口对接的思考,#  协议接口调试tools,vue.js,前端,javascript

概述

需求:

设计思路

实现思路分析

1.vue 组件分类和获取数值的方式

在Vue中,组件可以分为以下几种类型:

  1. 全局组件(Global Components):全局组件是在Vue实例化前定义的组件,可以在任何地方使用。可以通过Vue.component方法全局注册组件,或者在Vue实例中的components属性上注册组件。

  2. 局部组件(Local Components):局部组件是在Vue实例中定义的组件,只能在该Vue实例的范围内使用。可以在Vue实例的components属性中注册组件。

  3. 私有组件(Private Components):私有组件是在其他组件内部定义的组件,只能在该组件的范围内使用。可以在父组件的components属性中注册私有组件。

获取数值的方式取决于数据是在父组件传递给子组件还是在子组件自己定义的。以下是常见的获取数值的方式:

  1. 父组件传值给子组件:父组件通过属性的形式将数据传递给子组件,子组件可以通过props选项接收数据。在子组件中,可以通过this.$props或者直接使用props定义的变量名来获取父组件传递的数据。

  2. 子组件自定义数据:子组件可以在自己的data选项中定义数据,并通过模板或者计算属性等方式获取和使用这些数据。

  3. 子组件事件传递数据给父组件:子组件可以通过$emit方法触发自定义事件,并传递数据给父组件。父组件可以通过在子组件上监听对应的事件来获取数据。

这些是Vue中常见的组件分类和获取数值的方式,具体使用方法可以参考Vue的官方文档。
其实绝大部分的场景中我们都可以尝试对应的localstrore 存取的方式进行处理。

要获取 Vue 组件中的值,可以使用以下几种方法:

  1. 使用 v-model 双向绑定:在组件中的输入框或其他表单元素上使用 v-model 指令绑定一个父组件的数据属性。当用户在子组件中修改输入框的值时,父组件的数据属性也会跟着更新。这样就可以通过访问父组件的数据属性来获取组件中的值。
<template>
  <input v-model="value" type="text">
</template>

<script>
export default {
  props: ['value']
}
</script>
  1. 使用 $emit 事件:在子组件中通过 $emit 方法触发一个自定义事件,并传递需要传递的值。在父组件中通过在子组件上使用 v-on 指令监听该事件,并在触发时执行相应的方法来获取传递的值。
<template>
  <button @click="onClick">Click me</button>
</template>

<script>
export default {
  methods: {
    onClick() {
      this.$emit('button-clicked', 'Hello!')
    }
  }
}
</script>
<template>
  <child-component @button-clicked="onButtonClicked"></child-component>
</template>

<script>
export default {
  methods: {
    onButtonClicked(value) {
      console.log(value) // 输出:Hello!
    }
  }
}
</script>
  1. 使用 ref 引用:在父组件中通过在子组件上使用 ref 属性为子组件指定一个引用名称,然后通过访问 this.$refs 对象来获取子组件实例。然后可以使用子组件实例的方法和属性来获取需要的值。
<template>
  <child-component ref="childComponentRef"></child-component>
</template>

<script>
export default {
  mounted() {
    const childComponent = this.$refs.childComponentRef
    const value = childComponent.getValue()
    console.log(value)
  }
}
</script>

如何获取具体的组件数值参看对应的API文档

2.http 通信方式 分类 如何对接

HTTP通信方式可以分为以下几种分类:

  1. 请求方式分类:HTTP通信可以通过不同的请求方式进行交互,包括GET、POST、PUT、DELETE等。

  2. 数据格式分类:HTTP通信可以通过不同的数据格式进行传输,包括普通文本、JSON、XML等。

  3. 接口类型分类:HTTP通信可以用于不同的接口类型,包括Web接口、RESTful接口、SOAP接口等。

对接HTTP通信方式,一般需要以下步骤:

  1. 确定通信方式:根据具体需求,选择合适的请求方式进行通信。

  2. 构建请求数据:根据接口要求,构建合适的请求数据,包括URL、请求头、请求体等。

  3. 发送请求:使用相应的编程语言或工具库,发送HTTP请求。

  4. 处理响应:接收到服务器的响应后,根据响应数据进行处理,可以是解析响应数据、处理异常情况等。

  5. 解析响应数据:根据接口要求,解析响应数据,可以是从响应数据中提取需要的信息。

  6. 后续处理:根据业务需求,对响应数据进行后续的处理,例如存储、展示、分析等。

接入HTTP通信方式的具体实现取决于开发环境和编程语言,可以使用各种编程语言提供的HTTP库或框架,如Python的requests库、Java的HttpClient等。
最佳实践是先用工具测试完成后,拼成要素报文传递即可。通常来说都是基于JSON的restful 和xml 的SOAP。

3.vue 组件分类和赋值方式,

Vue具体组件有很多种,常见的包括但不限于:按钮组件、输入框组件、选择器组件、日历组件、对话框组件、表格组件等。

赋值方式有多种,取决于组件的属性和父组件调用时的需求。以下是一些常见的赋值方式:

  1. 静态赋值:直接在组件标签内部使用属性进行赋值,例如:

    <my-component message="Hello"></my-component>
    

    在组件内部通过props属性接收该值:

    props: {
      message: String
    },
    
  2. 动态赋值:使用v-bind指令将数据动态绑定到组件的属性上,例如:

    <my-component :message="myMessage"></my-component>
    

    在组件内部通过props属性接收该值:

    props: {
      message: String
    },
    
  3. 传递整个对象:可以将一个对象作为属性传递给子组件,例如:

    <my-component :user="userInfo"></my-component>
    

    在组件内部通过props属性接收该对象:

    props: {
      user: Object
    },
    
  4. 通过事件传递数据:当需要从子组件向父组件传递数据时,可以使用自定义事件。子组件通过$emit方法触发事件并传递数据,父组件通过在子组件标签上使用v-on指令监听事件并获取数据,例如:
    在子组件中触发事件:

    this.$emit('update', data);
    

    在父组件中监听事件:

    <my-component @update="handleUpdate"></my-component>
    

    在父组件中定义事件处理方法:

    methods: {
      handleUpdate(data) {
        // 处理传递的数据
      }
    }
    

Vue具体组件有很多,下面列举一些常用的组件:

  1. 按钮组件(Button):用于创建按钮,可以设置不同的样式和功能。
  2. 输入框组件(Input):用于接收用户的输入,可以设置输入框的类型和验证规则。
  3. 列表组件(List):用于展示数据列表,可以进行分页、排序等操作。
  4. 菜单组件(Menu):用于创建导航菜单,可以设置菜单的样式和功能。
  5. 弹窗组件(Modal):用于显示弹窗,可以通过设置属性来控制弹窗的内容和样式。
  6. 图片组件(Image):用于显示图片,可以设置图片的大小和样式。
  7. 表格组件(Table):用于展示表格数据,可以设置表格的列和数据。
  8. 标签组件(Tag):用于创建标签,可以设置标签的样式和点击事件。
  9. 图表组件(Chart):用于绘制图表,可以根据数据生成柱状图、折线图等。

赋值使用案例:

假设有一个用户信息的组件,可以将用户信息传递给组件进行展示。

HTML模板:

<template>
  <div>
    <h2>{{ user.name }}</h2>
    <p>{{ user.age }}</p>
    <p>{{ user.email }}</p>
  </div>
</template>

Vue脚本:

<script>
export default {
  name: 'UserInfo',
  props: {
    user: {
      type: Object,
      required: true
    }
  }
}
</script>

使用组件并传递用户信息:

<template>
  <div>
    <user-info :user="userInfo"></user-info>
  </div>
</template>

<script>
import UserInfo from './UserInfo.vue'

export default {
  name: 'App',
  data() {
    return {
      userInfo: {
        name: '张三',
        age: 20,
        email: 'zhangsan@example.com'
      }
    }
  },
  components: {
    UserInfo
  }
}
</script>

在这个例子中,通过在父组件中定义一个userInfo对象,并将其传递给UserInfo组件的user属性,从而完成了赋值。
当然不用的组件的赋值方法不同,具体参看具体的API文档。

我们再对接接口的情况下,大部分不用研究的,基本三步走,复用(本质是熟悉),搜索,逻辑连调和验证。

参考资料和推荐阅读

参考资料
官方文档
开源社区
博客文章
书籍推荐

欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!同时,期望各位大佬的批评指正~文章来源地址https://www.toymoban.com/news/detail-817432.html

到了这里,关于关于Vue前端接口对接的思考的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【Vue】Vue对接SpringBoot接口完整代码

    在Vue中调用SpringBoot接口需要先建立Vue项目,并添加axios库用于发起请求。然后在Vue中编写前端页面,调用SpringBoot接口。 以下是一个示例代码,前端页面需要调用后端接口,实现通过Vue显示SpringBoot后端数据。 在Vue中安装axios库: Vue中编写前端页面代码: 在SpringBoot中编写接口代

    2024年02月08日
    浏览(34)
  • Vue前端的一些表格组件的思考

    当我们需要在前端中展示一些表格内容时,我们往往使用 Vue 的 table 来实现 当前实现如下: Vue Easytable 是一个基于Vue2的表格组件,支持单元格合并、单元格编辑、多表头固定、多列固定、列拖动、排序、自定义列、分页、单元格编辑、多选、条件过滤、footer 汇总等功能。

    2024年02月11日
    浏览(29)
  • vue+mysql实现前端对接数据库

    下载引入相关依赖 1、cnpm install --save mysql 2、cnpm install --save axios 3、cnpm install --save body-parser 4、cnpm install --save express 5、cnpm install --savecrypto 在main中引入axios import Axios from ‘axios’ Vue.prototype.$axios = axios 配置连接 在src下新建文件夹server,在其中新建db.js文件,index.js文件,其中db是

    2024年02月02日
    浏览(33)
  • 国内前端vue对接OpenAI/chatgpt【文本互动/生成图片】

       如图;国内通过调用openai接口进行互动,实现图文互动/文本互动  注意:请求人数较多,需要等待   1、🔔 获取ApiKey 注册 OpenAI 账号,获取你的 ApiKey,过程略。 2、💬 聊天接口 ⚠️ 不再推荐使用本接口,后面将废弃。 接口地址 ( POST请求 ) POST https://api.openai.com/pro/cha

    2023年04月20日
    浏览(58)
  • 本地调试接口关于postman调用正常,Java代码则超时的问题。已解决

    项目需要使用到openai接口,浏览器以及postman调用接口均正常,唯独java项目中一直超时,本地项目使用的hutool自带的httpUtil工具类。 使用postman调取接口正常返回: 本地java项目调取超时: 代码如下: 百度大概搜了一下,大多都是让设置idea的系统代理,都没有解决掉这个问题

    2024年02月05日
    浏览(39)
  • vue前端对接监控视频 FLV格式 (分屏的操作 单屏 ,四平 ,六屏)

    vue前端对接监控视频 FLV格式 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 接触智慧园区,智慧工地,水泵站等项目之后,发现都有实时监控的对接,并且是可以多屏进行,就研究了相关的技术栈,找到了这个强大的播放器对前端还是很友好的,话

    2024年02月03日
    浏览(32)
  • 如何看接口的返回值以及如何调试html网页前端

    如何看接口的返回值: 1. chome F12看network中调用某个接口单击它,可以看到右边有提示返回的数据。 2. 代码中写console.log(msg);在F12调试中console标签页看结果。这个比较直观。 如何调试html网页前端: 网页是一个UI,控件,JS程序,后台接口,数据库一体的运用。因为它不同于传

    2024年02月11日
    浏览(27)
  • 关于前端或者postman传递Date数据测试接口报错

    错误: org.apache.ibatis.exceptions.PersistenceException: rn### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.Stringrn### Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String 解决: 将xml文件修改即可,然后前端或者postma

    2024年01月21日
    浏览(37)
  • Vue项目前端代码防止被调试

    被安全测试针对了,总是调试我这不太安全的代码。前端代码深度混淆转成十六进制还不行,仍然找到加密方法,对后端数据进行解密。这次就修改了思路换种方法:  我承认阁下很强,但假如, 我是说假如打开控制台是空白页面,阁下又该如何应对呢? 解决办法 前端代码防

    2024年01月25日
    浏览(33)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包