Vue 自定義一個可以高度自由化的模態框元件
阿新 • • 發佈:2019-02-04
export default {
name: "PromptModal",
data : function(){
return {
modal_show : false,
title : '',
body : '',
btn_name_left : '取消', // 左側按鈕的顯示的文字,
btn_name_right : '確定', // 左側按鈕的顯示的文字,
btn_class_left : 'btn btn-secondary' , // 左側按鈕的類
btn_class_right : 'btn btn-secondary btn-primary', // 右側按鈕的類
btn_url_left : '', // 左側按鈕跳轉的url
btn_url_right : '', // 右側按鈕跳轉的url
}
},
methods : {
// 初始化引數
open: function(params){
this .title = !! params.title ? params.title : this.title;
this.body = !! params.body ? params.body : this.body;
this.btn_name_left = !!params.btn_name_left ? params.btn_name_left : this.btn_name_left;
this.btn_name_right = !!params.btn_name_right ? params.btn_name_right : this .btn_name_right;
this.btn_class_left = !!params.btn_class_left ? params.btn_class_left : this.btn_class_left;
this.btn_class_right = !!params.btn_class_right ? params.btn_class_right : this.btn_class_right;
this.btn_url_left = !!params.btn_url_left ? params.btn_url_left : this.btn_url_left;
this.btn_url_right = !!params.btn_url_right ? params.btn_url_right : this.btn_url_right;
$('#modal-prompt').modal('toggle');
},
// 按鈕點選事件
redirectUrl : function(source){
switch (source) {
case 'left':
if (!!this.btn_url_left) {
window.location.href = this.btn_url_left;
}
break;
case 'right':
if (!!this.btn_url_right) {
window.location.href = this.btn_url_right;
}
break;
}
}
}
}