虚位以待(AD)
虚位以待(AD)
首页 > 网页特效 > JavaScript > vue弹窗组件使用方法

vue弹窗组件使用方法
类别:JavaScript   作者:码皇   来源:互联网   点击:

弹窗是一个项目必备的复用利器,这篇文章主要介绍了vue弹窗组件的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了vue弹窗组件的具体代码,供大家参考,具体内容如下

弹窗是一个项目必备的复用利器,所以封装起来,保证项目ui一致,是很有必要的。学了一段时间vue,想想还是用vue写一下吧。用的很小白,但是会写出来了,说明我也有进步一丢丢了。继续加油….

代码贴图如下,样式比较丑,不要介意…

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>ys-vue-modal-component</title> <style> p,h4{
    margin:0;
    }
    .modal{
    width: 480px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, .3);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .5);
    margin: 50px;
    }
    .modal-header {
    color: #fff;
    background: cadetblue;
    border-radius: 6px 6px 0 0;
    padding: 15px;
    border-bottom: 1px solid #5e9fa1;
    }
    .modal-content div {
    padding: 15px 10px;
    }
    .modal-footer {
    padding: 15px;
    text-align: right;
    border-top: 1px solid #e5e5e5;
    }
    .btn {
    border: 1px solid #d1d1d1;
    border-radius: 3px;
    background-color: #f7f7f7;
    background: -webkit-gradient(linear, 0 0, 0 100%, from(#f7f7f7), to(#f2f2f2));
    background: -moz-gradient(linear, 0 0, 0 100%, from(#f7f7f7), to(#f2f2f2));
    background: -o-gradient(linear, 0 0, 0 100%, from(#f7f7f7), to(#f2f2f2));
    background: -ms-gradient(linear, 0 0, 0 100%, from(#f7f7f7), to(#f2f2f2));
    height: 28px;
    padding: 0 20px;
    cursor: pointer;
    line-height: 28px;
    display: inline-block;
    color: #666666;
    margin-right: 5px;
    outline: none;
    }
    .blue {
    border: 1px solid #5e9fa1;
    background-color: #5e9fa1;
    background: -webkit-gradient(linear, 0 0, 0 100%, from(#74c4c6), to(#5e9fa1));
    background: -moz-gradient(linear, 0 0, 0 100%, from(#74c4c6), to(#5e9fa1));
    background: -o-gradient(linear, 0 0, 0 100%, from(#74c4c6), to(#5e9fa1));
    background: -ms-gradient(linear, 0 0, 0 100%, from(#74c4c6), to(#5e9fa1));
    color: #FFFFFF;
    }
    </style> <script src="https://unpkg.com/vue/dist/vue.js"></script></head><body> <div id="app"> <input type="button" class="btn blue" value="点击我,呼唤弹窗,再来一遍" v-if="isHide" @click="isHide=!isHide"> <ys-modal-component v-if="!isHide" modal-title="温馨提示" ok-btn="确认购买" cancel-btn="去意已决" @on-ok="ok" @on-cancel="cancel" > <div slot="modal-content"> 尊敬的用户,您购买的商品将于支付成功后3-7个工作日内发货,敬请周知。祝您购物愉快! </div> </ys-modal-component> </div> <script> /* props: modalTitle: 弹窗标题 okBtn: 确认按钮 cancelBtn: 取消按钮 注意事项:传参时候使用烤串的书写方式xx-xxx slot: modal-content: 内容区域 modal-footer: 页脚按钮区域 methods: okHandle: 触发确认on-ok自定义事件 cancelHandle: 触发取消on-cancel自定义事件 */ Vue.component('ys-modal-component', {
    props: {
    modalTitle: {
    type: String, default: '标题区域' }
    , okBtn: {
    type: String, default: '确认' }
    , cancelBtn: {
    type: String, default: '取消' }
    }
    , template: ` <div class="modal"> <div class="modal-header"> <h4>{
    {
    modalTitle }
    }
    </h4> </div> <div class="modal-content"> <div> <slot name="modal-content">内容区域</slot> </div> </div> <div class="modal-footer"> <input class="btn blue" type="button" v-model="okBtn" @click="okHandle" /> <input class="btn" type="button" v-model="cancelBtn" @click="cancelHandle" /> </div> </div> `, methods: {
    okHandle () {
    console.log("点击确定");
    this.$emit("on-ok");
    }
    , cancelHandle () {
    console.log("点击取消");
    this.$emit("on-cancel");
    }
    }
    }
    ) new Vue({
    el: "#app", data: {
    isHide: false }
    , methods: {
    ok () {
    alert("欢迎您购买本产品");
    }
    , cancel () {
    this.isHide = !this.isHide;
    }
    }
    }
    ) </script></body></html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

  • React为 Vue 引入容器组件和展示组件的教程详解
  • Vue表单类的父子组件数据传递示例
  • Vue SSR 组件加载问题
  • vue中的模态对话框组件实现过程
  • 使用Vue的slot插槽分发父组件内容实现高度复用、更加灵活的组件(推荐)
  • Vue波纹按钮组件制作
  • Vue实现PopupWindow组件详解
  • 学习Vue组件实例
  • vue弹窗消息组件的使用方法
  • 详解vue组件基础
相关热词搜索: vue 弹窗组件