@@ -6,9 +6,9 @@ import $db from '../../data';
66
77import './style.scss' ;
88
9- const shell = window . require ( 'electron' ) . shell ;
10- const fs = window . require ( 'fs' ) ;
11- const { dialog } = window . require ( 'electron' ) . remote ;
9+ // const shell = window.require('electron').shell;
10+ // const fs = window.require('fs');
11+ // const { dialog } = window.require('electron').remote;
1212
1313class Rank extends Component {
1414 constructor ( props ) {
@@ -19,92 +19,93 @@ class Rank extends Component {
1919 }
2020
2121 handleOpenExternalUrl = ( url ) => {
22- shell . openExternal ( url ) ;
22+ // shell.openExternal(url);
23+ window . open ( url , '_blank' ) ;
2324 } ;
2425
25- handleExportCollector = ( ) => {
26- const filters = [
27- {
28- name : 'json' ,
29- extensions : [ 'json' ] // 文件后缀名类型, 如 md json
30- }
31- ] ;
32- // https://electronjs.org/docs/api/dialog#dialogshowsavedialogbrowserwindow-options-callback
33- dialog . showSaveDialog (
34- {
35- filters,
36- defaultPath : 'here-music-collector'
37- } ,
38- ( filename ) => {
39- if ( ! filename ) {
40- return ;
41- }
42- // http://nodejs.cn/api/fs.html#fs_fs_writefile_file_data_options_callback
43- fs . writeFile ( filename , JSON . stringify ( this . props . collector ) , ( err ) => {
44- message . info ( '!Congratulation! 备份成功 !Congratulation!' ) ;
45- if ( err ) { throw err ; }
46- } ) ;
47- }
48- ) ;
49- } ;
26+ // handleExportCollector = () => {
27+ // const filters = [
28+ // {
29+ // name: 'json',
30+ // extensions: ['json'] // 文件后缀名类型, 如 md json
31+ // }
32+ // ];
33+ // // https://electronjs.org/docs/api/dialog#dialogshowsavedialogbrowserwindow-options-callback
34+ // dialog.showSaveDialog(
35+ // {
36+ // filters,
37+ // defaultPath: 'here-music-collector'
38+ // },
39+ // (filename) => {
40+ // if (!filename) {
41+ // return;
42+ // }
43+ // // http://nodejs.cn/api/fs.html#fs_fs_writefile_file_data_options_callback
44+ // fs.writeFile(filename, JSON.stringify(this.props.collector), (err) => {
45+ // message.info('!Congratulation! 备份成功 !Congratulation!');
46+ // if (err) { throw err; }
47+ // });
48+ // }
49+ // );
50+ // };
5051
51- handleImportCollector = ( ) => {
52- // https://electronjs.org/docs/api/dialog#dialogshowopendialogbrowserwindow-options-callback
53- dialog . showOpenDialog (
54- {
55- properties : [ 'openFile' ]
56- } ,
57- ( filename ) => {
58- if ( ! filename || filename . length === 0 ) { return ; }
59- fs . readFile ( filename [ 0 ] , ( err , fd ) => {
60- if ( err ) {
61- if ( err . code === 'ENOENT' ) {
62- return ;
63- }
64- throw err ;
65- }
66- try {
67- const collector = JSON . parse ( fd ) ;
68- if ( collector . name !== 'collector' ) {
69- message . info ( '!!请导入正确的备份文件!!' ) ;
70- return ;
71- } else {
72- $db . update ( { name : 'collector' } , collector , ( ) => {
73- this . props . handleChangeCollector ( collector ) ;
74- message . info ( '!Congratulation! 导入成功 !Congratulation!' ) ;
75- } ) ;
76- }
77- } catch {
78- message . info ( '!!请导入正确的备份文件!!' ) ;
79- }
80- } ) ;
81- }
82- ) ;
83- } ;
84-
85- renderExportCollector ( ) {
86- return (
87- < li className = "export-collector" >
88- < h1 className = "title" > 导出我的收藏</ h1 >
89- < p className = "description" >
90- 因为重装软件会导致收藏夹数据丢失,所以强烈建议在重装软件前导出收藏夹进行备份。
91- </ p >
92- < button onClick = { this . handleExportCollector } > 导出到本地文件</ button >
93- </ li >
94- ) ;
95- }
52+ // handleImportCollector = () => {
53+ // // https://electronjs.org/docs/api/dialog#dialogshowopendialogbrowserwindow-options-callback
54+ // dialog.showOpenDialog(
55+ // {
56+ // properties: ['openFile']
57+ // },
58+ // (filename) => {
59+ // if (!filename || filename.length === 0) { return; }
60+ // fs.readFile(filename[0], (err, fd) => {
61+ // if (err) {
62+ // if (err.code === 'ENOENT') {
63+ // return;
64+ // }
65+ // throw err;
66+ // }
67+ // try {
68+ // const collector = JSON.parse(fd);
69+ // if (collector.name !== 'collector') {
70+ // message.info('!!请导入正确的备份文件!!');
71+ // return;
72+ // } else {
73+ // $db.update({ name: 'collector' }, collector, () => {
74+ // this.props.handleChangeCollector(collector);
75+ // message.info('!Congratulation! 导入成功 !Congratulation!');
76+ // });
77+ // }
78+ // } catch {
79+ // message.info('!!请导入正确的备份文件!!');
80+ // }
81+ // });
82+ // }
83+ // );
84+ // };
9685
97- renderImportCollector ( ) {
98- return (
99- < li className = "import-collector" >
100- < h1 className = "title" > 导入我的收藏夹</ h1 >
101- < p className = "description" >
102- 导入备份文件,恢复到我的收藏(会覆盖当前的收藏夹)。
103- </ p >
104- < button onClick = { this . handleImportCollector } > 导入备份文件</ button >
105- </ li >
106- ) ;
107- }
86+ // renderExportCollector () {
87+ // return (
88+ // <li className="export-collector">
89+ // <h1 className="title">导出我的收藏</h1>
90+ // <p className="description">
91+ // 因为重装软件会导致收藏夹数据丢失,所以强烈建议在重装软件前导出收藏夹进行备份。
92+ // </p>
93+ // <button onClick={this.handleExportCollector}>导出到本地文件</button>
94+ // </li>
95+ // );
96+ // }
97+ //
98+ // renderImportCollector () {
99+ // return (
100+ // <li className="import-collector">
101+ // <h1 className="title">导入我的收藏夹</h1>
102+ // <p className="description">
103+ // 导入备份文件,恢复到我的收藏(会覆盖当前的收藏夹)。
104+ // </p>
105+ // <button onClick={this.handleImportCollector}>导入备份文件</button>
106+ // </li>
107+ // );
108+ // }
108109
109110 renderAbout ( ) {
110111 return (
@@ -134,7 +135,7 @@ class Rank extends Component {
134135 }
135136 >
136137 Issues
137- </ span > { ' ' }
138+ </ span >
138139 中提出。
139140 </ p >
140141 < p > 如果您喜欢 Here Music 的话,欢迎 Star 和 Fork 本项目。</ p >
@@ -148,8 +149,8 @@ class Rank extends Component {
148149 return (
149150 < div className = "page-about" >
150151 < ul className = "page-about-container" >
151- { this . renderExportCollector ( ) }
152- { this . renderImportCollector ( ) }
152+ { /*{ this.renderExportCollector()}*/ }
153+ { /*{ this.renderImportCollector()}*/ }
153154 { this . renderAbout ( ) }
154155 </ ul >
155156 </ div >
0 commit comments