mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-08 02:10:24 +00:00
[shared file view] rewrote with react (#3191)
* rewrote 'file view' with react for audio, document, spreadsheet, svg, unknown files * code improvement for 'video' file * bugfix
This commit is contained in:
44
frontend/src/shared-file-view-audio.js
Normal file
44
frontend/src/shared-file-view-audio.js
Normal file
@@ -0,0 +1,44 @@
|
||||
import React from 'react';
|
||||
import ReactDOM from 'react-dom';
|
||||
import SharedFileView from './components/shared-file-view/shared-file-view';
|
||||
import SharedFileViewTip from './components/shared-file-view/shared-file-view-tip';
|
||||
import AudioPlayer from './components/audio-player';
|
||||
|
||||
import './css/audio-file-view.css';
|
||||
|
||||
const { rawPath, err } = window.shared.pageOptions;
|
||||
|
||||
class SharedFileViewAudio extends React.Component {
|
||||
render() {
|
||||
return <SharedFileView content={<FileContent />} />;
|
||||
}
|
||||
}
|
||||
|
||||
class FileContent extends React.Component {
|
||||
render() {
|
||||
if (err) {
|
||||
return <SharedFileViewTip />;
|
||||
}
|
||||
|
||||
const videoJsOptions = {
|
||||
autoplay: false,
|
||||
controls: true,
|
||||
preload: 'auto',
|
||||
sources: [{
|
||||
src: rawPath
|
||||
}]
|
||||
};
|
||||
return (
|
||||
<div className="shared-file-view-body d-flex">
|
||||
<div className="flex-1">
|
||||
<AudioPlayer { ...videoJsOptions } />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
ReactDOM.render(
|
||||
<SharedFileViewAudio />,
|
||||
document.getElementById('wrapper')
|
||||
);
|
Reference in New Issue
Block a user