vue 开发一个按钮组件的示例代码_vue.js

本篇文章主要介绍了vue 开发一个按钮组件的示例代码,现在分享给大家,也给大家做个参考。一起过来看看吧

最近面试,被问到一个题目,vue做一个按钮组件;

当时只是说了一下思路,回来就附上代码。

解决思路:

通过父子组件通讯($refs 和 props)

立即学习“前端免费学习笔记(深入)”;

props接受参数, $refs调用子组件的方法

来达到点击提交改变按钮状态,如果不成功则取消按钮状态

在src/components/ 下建一个button.vue

 

   

export default { data(){ return { text: this.btnData.text, state: false, } }, props: { btnData: { types: Array, default() { return { text: '确认', } } } }, methods: { confirm(){ this.text += '...' this.state = true //这里是激活父组件的事件,因为子组件是不会冒泡到父组件上的,必须手动调用$emit //相对应父组件要在调用该组件的时候,将其挂载到上面 this.$emit("confirm") }, cancel(){ this.text = this.btnData.text this.state = false } }}.confirm { border: none; color: #fff; width: 100%; padding: 1rem 0; border-radius: 4px; font-size: 1.6rem; background: #5da1fd; &:focus { outline: none; }}

登录后复制

在页面中调用:

  

       @confirm="confirm"    ref="btn"   >  

 import Btn from '@/components/button'export default { components: { Btn }, methods: { confirm(){ if(!this.companyName){ this.$toast("公司名不能为空") this.$refs.btn.cancel() } }}

登录后复制

在这里,要注意一些细节:

1. button组件形成之后和其它p元素的间距,如果是在组件内定死是很难复用的。

2. 在复用的时候,在父组件中是改变不了子组件的样式的,如果要强制更改,单独写一个并去掉scoped。

相关推荐:

vue中的provide/inject的学习

论vue项目api相关代码的组织方式

以上就是vue 开发一个按钮组件的示例代码_vue.js的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2776764.html

(0)
上一篇 2025年3月8日 14:56:10
下一篇 2025年3月8日 14:56:17

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Koa2 之文件上传下载的示例代码_node.js

    本篇文章主要介绍了koa2 之文件上传下载的示例代码,现在分享给大家,也给大家做个参考。一起过来看看吧 前言 上传下载在 web 应用中还是比较常见的,无论是图片还是其他文件等。在 Koa 中,有很多中间件可以帮助我们快速的实现功能。 文件…

    编程技术 2025年3月8日
    200
  • Node.js实现注册邮箱激活功能的方法示例_node.js

    现在很多网站都需要有注册邮箱激活的功能,本篇文章主要介绍了node.js实现注册邮箱激活功能的方法示例,现在分享给大家,也给大家做个参考。一起过来看看吧 在做自己的node项目极客教程时,需要开发一个注册邮箱激活的功能,这个功能非常常见,当…

    2025年3月8日
    200
  • vue 实现全选全不选的示例代码_vue.js

    本篇文章主要介绍了vue 实现全选全不选的示例代码,现在分享给大家,也给大家做个参考。一起过来看看吧 全选功能可以说是前端开发中非常常见的一个功能,以前的项目开发用jQuery开发比较多。最近在使用vue前端框架重构之前的项目。从jQuer…

    2025年3月8日
    200
  • js中prototype详解

    prototype 是在 IE 4 及其以后版本引入的一个针对于某一类的对象的方法,而且特殊的地方便在于:它是一个给类的对象添加方法的方法!这一点可能听起来会有点乱,别急,下面我便通过实例对这一特殊的方法作已下讲解: 首先,我们要先了解一下…

    编程技术 2025年3月8日
    200
  • 原生js实现Ajax的方法

    一般来说,大家可能都会习惯用JQuery提供的Ajax方法,但是用原生的js怎么去实现Ajax方法呢?本文主要和大家分享原生js实现Ajax的方法,希望能帮助到大家。     JQuery提供的Ajax方法: $.ajax({    url…

    编程技术 2025年3月8日
    200
  • 实现JS拖动效果的简单方法

    本文主要和大家分享实现JS拖动效果的简单方法,利用CSS3的Trnsform的移动属性来实现的,希望能帮助到大家。 代码如下 nbsp;html>                Document     #dom{ width: 50…

    编程技术 2025年3月8日
    200
  • js刷新页面的方法

    本文介绍下,用js刷新当前页面的几种方法,包括reload方法、replace方法、自动刷新方法等。有需要的朋友参考下吧 如何实现刷新当前页面呢?借助js你将无所不能。 1,reload 方法,该方法强迫浏览器刷新当前页面。语法:locat…

    编程技术 2025年3月8日
    200
  • js开发数据库的实例分享

    前端很多时候还是需要保存一些数据的,这里的保存指的是长久的保存。以前的思想是把数据保存在cookie中,或者将key保存在cookie中,将其他数据保存在服务器上。这几个场景用处很多,也非常的成熟好用。但是我还是想要一种能够长久的保存在本地…

    编程技术 2025年3月8日
    200
  • Vue.js条件渲染详解

    本文主要和大家分享vue.js条件渲染详解,在字符串模板中,比如 handlebars,我们得像这样写一个条件块: {{#if ok}}    Yes{{/if}} 登录后复制 在 Vue 中,我们使用 v-if 指令实现同样的功能: Ye…

    编程技术 2025年3月8日
    200
  • 在spring mvc 返回json数据到ajax报错应该如何处理

    这次给大家带来在spring mvc 返回json数据到ajax报错应该如何处理,处理在spring mvc返回json数据到ajax报错的注意事项有哪些,下面就是实战案例,一起来看一下。 最近使用ajax接收spring mvc传过来的j…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论