У меня есть объект камеры, который я начинаю запись (recordAsync) в компонентеComponentDidMount и останавливаю ее (stopRecording) в компонентеComponentWillUnmount. однако обещание никогда не выполняется (никогда, ни catch no, наконец, не вызываются)
я делаю что-то не так?
вот код:
Код: Выделить всё
import { Camera, Permissions } from 'expo';
import React from 'react';
export default class CameraReaction extends React.Component {
constructor(props){
super(props)
this.takeFilm = this.takeFilm.bind(this)
this.isFilming=false
this.cameraScreenContent = this.renderCamera()
}
componentDidMount(){
if (this.props.shouldrecording && !this.isFilming ){
this.takeFilm()
}
}
componentWillUnmount(){
this.camera.stopRecording()
}
saveMediaFile = async video => {
console.log("=======saveMediaFile=======");
}
renderCamera = () => {
let self = this
return (
{self.camera=ref}}
style={styles.camera}
type='front'
whiteBalance='off'
ratio='4:3'
autoFocus='off'
>
);
}
takeFilm(){
let self = this
try{
self.camera.recordAsync()
.then(data => {
self.saveMediaFile(data),
self.isFilming=false
})
.catch(error => {console.log(error)})
this.isFilming = true
}
catch(e){
this.isFilming = false
}
};
render() {
return {this.cameraScreenContent};
}
}
заранее спасибо
Подробнее здесь: https://stackoverflow.com/questions/527 ... -resolving