资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > Web开发 > JavaScript

vue封装可复用组件confirm,并绑定在vue原型上的示例

JavaScript 更新时间: 发布时间: 计算机考试归档 最新发布

vue封装可复用组件confirm,并绑定在vue原型上的示例

如下所示:

首先我们需要创建 /confirm/i.vue , /confirm/i.js这两个文件,一个实现dom结构,一个实现相关逻辑

/confirm/i.vue




./confirm/i{background-color:rgba(0, 0, 0, 0.6);width: 100%;height: 100%; position: fixed;top: 0;}
.con_box{width: 75%;height: 22%;background-color: white;position: absolute;top: 0;bottom: 0;left: 0;right: 0;margin: auto;border-radius: 5px;}
.context{padding: 10px;}
.context h6{font-size: 24px;padding: 15px;}
.context p{font-size: 20px;padding: 35px 15px;text-overflow: ellipsis;overflow: hidden;white-space: nowrap;}
.btn{padding: 15px;text-align: right;}
.btn span{padding: 10px 35px; color: white;border-radius: 5px;}
.btn span:nth-child(1){background-color: #f1f1f1;color: rgb(106, 223, 223);}
.btn span:nth-child(2){background-color: rgb(106, 223, 223);}

/confirm/i.js

import Vue from 'vue';
import confirm from './/confirm/i.vue';

let confirmConstructor = Vue.extend(/confirm/i);

let theConfirm = function (text) {
 return new Promise((res, rej) => { //promise封装,ok执行resolve,no执行rejectlet
  let confirmDom = new confirmConstructor({ 
  el: document.createElement('div')
  })
  document.body.appendChild(/confirm/iDom.$el); //new一个对象,然后插入body里面

  /confirm/iDom.text = text; //为了使/confirm/i的扩展性更强,这个采用对象的方式传入,所有的字段都可以根据需求自定义
  /confirm/iDom.ok = function () {
  res()
  /confirm/iDom.isShow = false
  }
  /confirm/iDom.close = function () {
  rej()
  /confirm/iDom.isShow = false
  }

 })
 }

 export default the/confirm/i; 
 
 //暴露出去,别忘记挂载到vue的原型上 
 // => 在main.js里面先引入 import theConfirm from './components//confirm/i//confirm/i.js'
 // => 再挂载 Vue.prototype.$confirm = the/confirm/i;
 //在需要的地方直接用以下方法调用即可:
 // this.$confirm({
 //  type:'提示',
 //  msg:'是否删除这条信息?',
 //  btn:{
 //   ok:'yes',
 //   no:'no'
 //  }
 // }).then(() => {
 //  console.log('ok')
 // })
 // .catch(() => {
 //  console.log('no')
 // })

main.js

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'

//这里就是对组件的绑定
import theConfirm from './components//confirm/i//confirm/i.js'
Vue.prototype.$confirm = the/confirm/i;

Vue.config.productionTip = false

new Vue({
 el: '#app',
 router,
 components: { App },
 template: ''
})

helloworld.vue







span{font-size: 24px;}

以上这篇vue封装可复用组件/confirm/i,并绑定在vue原型上的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持趣学号。

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/72773.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【vue封装可复用组件confirm,并绑定在vue原型上的示例】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2