From 24af7c3084d98e4d774c95ed6330fc79e88b77ce Mon Sep 17 00:00:00 2001 From: haiyangcui Date: Wed, 7 Oct 2020 23:13:05 +0200 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=AF=BC=E5=87=BA=E4=B8=BAjs?= =?UTF-8?q?on=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/IPTV.vue | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/src/components/IPTV.vue b/src/components/IPTV.vue index 848bc68..e00695a 100644 --- a/src/components/IPTV.vue +++ b/src/components/IPTV.vue @@ -125,17 +125,25 @@ export default { exportSites () { const options = { filters: [ - { name: 'm3u file', extensions: ['m3u'] } + { name: 'm3u file', extensions: ['m3u'] }, + { name: 'JSON file', extensions: ['json'] } ] } remote.dialog.showSaveDialog(options).then(result => { if (!result.canceled) { - var writer = require('m3u').extendedWriter() - this.iptvList.forEach(e => { - writer.file(e.url, -1, e.name) - }) - fs.writeFileSync(result.filePath, writer.toString()) - this.$message.success('已保存成功') + if (result.filePath.endsWith('m3u')) { + var writer = require('m3u').extendedWriter() + this.iptvList.forEach(e => { + writer.file(e.url, -1, e.name) + }) + fs.writeFileSync(result.filePath, writer.toString()) + this.$message.success('已保存成功') + } else { + const arr = [...this.iptvList] + const str = JSON.stringify(arr, null, 4) + fs.writeFileSync(result.filePath, str) + this.$message.success('已保存成功') + } } }).catch(err => { this.$message.error(err)