1. 程式人生 > >6、用vue2.0extend寫alert模態框彈窗元件

6、用vue2.0extend寫alert模態框彈窗元件

通過Vue.extend建立元件構造器的方法寫彈窗元件

alert.js檔案程式碼

import Vue from 'vue'
// 建立元件構造器
const alertHonor = Vue.extend(require('./alert.vue'));
var currentMsg = {callback:function(){
}}

export default function(options){
var alertComponent =  new alertHonor({el: document.createElement('div')});alertComponent.title = 
options.title; alertComponent.ranking = options.ranking; // 把alertHonor.vue加入body中 alertComponent.$appendTo(document.body); // 回撥函式 alertComponent.callback = function(action) { if (action == 'share') { options.share(); } }; }

alert.vue程式碼

<template>
    <div class="alertHonor" 
v-if="showAlertHonor"> <div class="alertHonorBox" @click="alertHonorClick"></div> <div class="honorWindow"> <div class="honorClose" @click="honorClose"></div> <div class="honorBg"> <div class="honorShare"
> <div class="honorBgLeft">升級通知</div> <div class="honorBgRight" @click='handleActions("share")'>分享</div> </div><div class="honorText">{{title}}</div> </div> <div class="honorRanking"> {{ranking}} </div> </div> </div> </template> <script> export default{ props:{ img:{type:String}, //圖片 title:{type:String}, //達人暱稱 ranking:{type:String}, //排名 share:{type:Function}, //分享 }, data(){ return{ showAlertHonor:true } }, methods:{ alertHonorClick(){ //點選其他區域 this.showAlertHonor = false; //關閉整個視窗 }, honorClose(){ //點選關閉圖示 this.showAlertHonor = false; }, handleActions(action){ this.callback(action); } } } </script>
 引用頁面程式碼
<script>
    import AlertHonor from '../alert.js'
export default{
        data(){
            return{
                title:'我的榮譽'
}
        },
ready(){
        },
methods:{
            back(){
                alert(1)
            },
submit(){
                var vm = this;
AlertHonor({
                    title:'拜訪達人',
ranking:'您在全國排名第99',
share: function(){
                        vm.share();
}
                });
},
share(){  //點選分享
alert('分享');
},
}
    }
</script>

相關推薦

6vue2.0extendalert元件

通過Vue.extend建立元件構造器的方法寫彈窗元件 alert.js檔案程式碼 import Vue from 'vue' // 建立元件構造器 const alertHonor = Vue.extend(require('./alert.vue')); var cu

vue2.x註冊一個全局的alert組件

lsa ext one eight ref over 回調函數 pos leave 一、在實際的開發當中,彈窗是少不了的,默認系統的彈窗樣式太醜,難以滿足項目的實際需求,所以需要自己定義彈窗組件,把彈窗組價定義為全局的,這樣減少每次使用的時候引入麻煩,節省開發時間。本文將分

jQuery初識之選擇器樣式操作和篩選器(和選單示例)

一、jQuery 1、介紹 jQuery是一個快速、簡潔的JavaScript框架,是繼Prototype之後又一個優秀的JavaScript程式碼庫(或JavaScript框架)。 jQuery設計的宗旨是“write Less,Do More”,即倡導寫更少的程式碼,做更多的事情。 它封裝J

bootstrap刪除出並詢問是否刪除【通用刪除

cnblogs iss 是否 png con btn ima 點擊 void      普通的詢問是否刪除的對話框比較low,可以利用bootstrap的模態框代替普通的對話框來實現刪除。 效果:   點刪除的時候彈出模態框詢問是否刪除,點確認的時候將需要刪除的

利用出,jQuery實現table的增刪改查。

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script type="text/ja

bootstrap出和隱藏,動態改變中間內容

引入檔案 <link rel="stylesheet" href="bootstrap.min.css">     <link rel="stylesheet" href="style.css">     <script src="jquery

bootstrap--出圖片

<!-- Button trigger modal --> <button class="btn btn-primary btn-lg" data-toggle="modal" da

bootstrap出後如何獲得焦點

這個應該是,模態框出來後,讓輸入框獲得焦點。所以,應該用JS去做這件事情。在模態框事件中,當模態框已經顯示出來時,讓輸入框獲得焦點。下來上程式碼。 在$(function(){})中增加以下程式碼:

bootstrap table 第一:實現出編輯

idf src prim edi javascrip com ear var 數據顯示 布局代碼: 效果圖: <!doctype html> <html lang="zh-cn"> <head> <

vue+antdesign實現父子元件之間傳值

vue中實現父子元件間單向資料流傳遞比較方便,子元件通過prop接收父元件傳遞過來的值,父元件通過監聽子元件emit出的函式接收子

htmlcss和js原生一個,順便解決父元素半透明子元素不透明效果

script javascrip z-index htm index 彈出 rgb 特性 radi 模態框: html部分: <!-- 按鈕 --> <button id="box" onclick="pop_box()">彈出框</

項目一:第十二天 1常見權限控制方式 2基於shiro提供url攔截方式驗證權限 3在realm中授權 5總結驗證權限方式(四種) 6戶註銷7基於treegrid實現菜單展示

eal 重復數 規則 認證通過 delete get 數據庫 filter 登陸 1 課程計劃 1、 常見權限控制方式 2、 基於shiro提供url攔截方式驗證權限 3、 在realm中授權 4、 基於shiro提供註解方式驗證權限 5、 總結驗證權限方式(四種) 6、

datatablesbootstrap的關閉,JQuery清空form資料

//關閉模態框時清空資料 $(function (){ $('#myModalId').on('hidden.bs.modal', function (){ $(':input','#myFormId').not(':button,:submit,:res

vue實現組件

dispatch cast out cancel 升級 -m 接收 方法 eno 基本上每個項目都需要用到模態框組件,由於在最近的項目中,alert組件和confirm是兩套完全不一樣的設計,所以我將他們分成了兩個組件,本文主要討論的是confirm組件的實現。 組件結構

bootstrap嵌套tabindex屬性去除陰影

樣式 元素 不存在 logs dia src out belle rop 模態框嵌套 在開發中,遇到需要通過點擊事件觸發第一個模態框,觸發後通過事件喚起第二個模態框,並且通過事件觸發第三個模態框;即模態框嵌套。 模態框嵌套需要用一個模態框包裹所涉及嵌套的模態框,從而點擊

十三$.ajax/非window.open()href屬性submit()等提交請求及優劣及問題解決

題解 字符 upd 管理員 系統管理 ogl menu 縮小 fir 1. $.ajax提交請求進行數據更新,並通過回調進行有效提示 $.ajax({ type: "post", url: dispacher,

MVC中調之後導致JS失效

src 下拉列表框 () image 解決 進入 問題 func bubuko 今天在工作中碰到一個頁面調用模態框之後,頁面原來的JS失效的問題,由於前臺經驗較少,折騰了一天。。。 問題描述是這樣,在頁面,有兩個下拉列表框A和B,做了下拉列表框聯動,有一個butto

Bootstrap(modal),並新增帶複選的表格(table),還可做提示檔案選擇等,很實用!

      Bootstrap中的模態框外掛以彈出對話方塊的形式出現,具有最小和最實用的功能集,主要的是使用起來很靈活!有以下幾個特性:(1)不支援同時開啟多個模態框;(2)務必將模態框的 HTML 程式碼放在文件的最高層級內(也就是說,儘量作為 body 標籤的直接子元素)

Bootstrap -- 外掛: 滾動監聽標籤頁

Bootstrap -- 外掛: 模態框、滾動監聽、標籤頁 1. 模態框(Modal): 覆蓋在父窗體上的子窗體。 使用模態框: <!DOCTYPE html> <html> <head> <meta http-equiv="Content

Modal使用ajax向後臺傳資料和檔案之modal複

昨天把新增計劃概要寫完了,那麼今天要開始新增計劃了,經理開始催了,好急好急!!＀! 那麼新增計劃從哪裡開始呢,我們的前段已經編輯好了,像這樣的: OK,重點是天數,我們要先取到天數才行,那麼天數之前已經給出了,在第一頁上,我們直接用Jqu