feat:新功能
webshell模块:关闭窗口时,增加询问提示窗口并提供remember功能(选择yes时,再次关闭窗口,不再提示)
This commit is contained in:
@@ -135,6 +135,30 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
<el-dialog :visible.sync="closeConfirmShow" :modal-append-to-body='false' :show-close="true" width="500px" @close="cancleConfirm" class="nz-dialog" >
|
||||||
|
<div >
|
||||||
|
<div class="el-message-box__content">
|
||||||
|
<div class="el-message-box__container">
|
||||||
|
<div class="el-message-box__status el-icon-warning">
|
||||||
|
</div>
|
||||||
|
<div class="el-message-box__message">
|
||||||
|
<p>{{$t('webshell.closeTip')}}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div slot="footer" class="footer">
|
||||||
|
<div class="el-message-box__btns" style="text-align: right;margin-top: 5px;">
|
||||||
|
<el-checkbox v-model="closeRemember" style="padding-right: 132px;">{{$t('webshell.remember')}}</el-checkbox>
|
||||||
|
<button @click="cancleConfirm" type="button" class="el-button el-button--default el-button--small">
|
||||||
|
<span>{{$t('tip.no')}}</span>
|
||||||
|
</button>
|
||||||
|
<button @click="closeShellWindow" type="button" class="el-button el-button--default el-button--small el-button--primary ">
|
||||||
|
<span>{{$t('tip.yes')}}</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -153,6 +177,8 @@
|
|||||||
return {
|
return {
|
||||||
consoleShow:false,
|
consoleShow:false,
|
||||||
isFullScreen:false,
|
isFullScreen:false,
|
||||||
|
closeConfirmShow:false,
|
||||||
|
closeRemember:false,
|
||||||
initConsoleHeight:300,//只读,初始化高度
|
initConsoleHeight:300,//只读,初始化高度
|
||||||
consoleHeight:300,//console高度
|
consoleHeight:300,//console高度
|
||||||
resizeConsoleHeight: 300, //resize后的高度,用于记录最大化、最小化前的高度
|
resizeConsoleHeight: 300, //resize后的高度,用于记录最大化、最小化前的高度
|
||||||
@@ -239,6 +265,23 @@
|
|||||||
|
|
||||||
//可以做最小化的处理,点击窗口外的空白处会调用此方法
|
//可以做最小化的处理,点击窗口外的空白处会调用此方法
|
||||||
closeConsole(){
|
closeConsole(){
|
||||||
|
//弹窗询问是否关闭所有链接,关闭窗口?复选框:记住我的选择(用户勾选且选择yes 后,保存到localstorage,之后关闭不再提醒)
|
||||||
|
//localStorage.getItem('nz-language') ? localStorage.getItem('nz-language') : 'en', //en/cn
|
||||||
|
//localStorage.setItem('nz-language', this.lang);
|
||||||
|
let remember = localStorage.getItem('close-shell-remember') ? localStorage.getItem('close-shell-remember') : false;
|
||||||
|
if(remember){
|
||||||
|
this.closeShellWindow();
|
||||||
|
}else {
|
||||||
|
this.closeConfirmShow = true;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
cancleConfirm(){
|
||||||
|
this.closeConfirmShow = false;
|
||||||
|
},
|
||||||
|
closeShellWindow(){
|
||||||
|
if(this.closeRemember){// remember me
|
||||||
|
localStorage.setItem('close-shell-remember', this.closeRemember);
|
||||||
|
}
|
||||||
//关闭所有连接
|
//关闭所有连接
|
||||||
this.editableTabs.forEach((tab, index) => {
|
this.editableTabs.forEach((tab, index) => {
|
||||||
this.$refs['console' + index][0].closeSocket();
|
this.$refs['console' + index][0].closeSocket();
|
||||||
@@ -257,6 +300,7 @@
|
|||||||
this.$store.commit('closeConsole');
|
this.$store.commit('closeConsole');
|
||||||
|
|
||||||
window.removeEventListener('resize',this.windowChange);
|
window.removeEventListener('resize',this.windowChange);
|
||||||
|
this.closeConfirmShow = false;
|
||||||
},
|
},
|
||||||
handleClick(){
|
handleClick(){
|
||||||
|
|
||||||
|
|||||||
@@ -48,6 +48,8 @@ const cn = {
|
|||||||
fileSelect:'选择',
|
fileSelect:'选择',
|
||||||
downloadButtonTitle:'下载',
|
downloadButtonTitle:'下载',
|
||||||
filePath:'文件路径',
|
filePath:'文件路径',
|
||||||
|
closeTip:'是否断开所有连接,关闭窗口?',
|
||||||
|
remember:'记住我的决定',
|
||||||
},
|
},
|
||||||
pageSize: '条/页',
|
pageSize: '条/页',
|
||||||
login: {
|
login: {
|
||||||
|
|||||||
@@ -80,6 +80,8 @@ const en = {
|
|||||||
fileSelect:'select',
|
fileSelect:'select',
|
||||||
downloadButtonTitle:'Download',
|
downloadButtonTitle:'Download',
|
||||||
filePath:'file path',
|
filePath:'file path',
|
||||||
|
closeTip:'All connections will be closed, are you sure you want to close the window?',
|
||||||
|
remember:'Remember my decision'
|
||||||
},
|
},
|
||||||
login: {
|
login: {
|
||||||
username: 'Username',
|
username: 'Username',
|
||||||
|
|||||||
Reference in New Issue
Block a user