use strict';
import React, { Component } from 'react';
import {
AppRegistry,
Dimensions,
StyleSheet,
Text,
TouchableHighlight,
View
} from 'react-native';
import Camera from 'react-native-camera';
class BadInstagramCloneApp extends Component {
render() {
return (
<View style={styles.container}>
<Camera
ref={(cam) => {
this.camera = cam;
}}
style={styles.preview}
aspect={Camera.constants.Aspect.fill}>
<Text style={styles.capture} onPress={this.takePicture.bind(this)}>[CAPTURE]</Text>
</Camera>
</View>
);
}
takePicture() {
this.camera.capture()
.then((data) => console.log(data))
.catch(err => console.error(err));
}
}
const styles = StyleSheet.create({
container: {
flex: 1
},
preview: {
flex: 1,
justifyContent: 'flex-end',
alignItems: 'center',
height: Dimensions.get('window').height,
width: Dimensions.get('window').width
},
capture: {
flex: 0,
backgroundColor: '#fff',
borderRadius: 5,
color: '#000',
padding: 10,
margin: 40
}
});
AppRegistry.registerComponent('AwesomeProject', () => BadInstagramCloneApp);
我使用以下步骤来解决此问题:删除node_modules文件夹 - rm -rf node_modules && npm install重置打包程序缓存 - rm -fr $ TMPDIR / react- *或node_modules / react-native / packager / packager.sh --reset -cache清除守望者手表 - watchman watch-del-all从头开始重新创建项目但我仍然收到错误。
确保您已正确设置,包括根据$ react-native link react-native-camera
运行documentation和其他设置。
你可以尝试使用
var Camera = require('react-native-camera')
替换线:
import Camera from 'react-native-camera';
有了这条线:
import {RNCamera} from 'react-native-camera';
将<Camera></Camera>
标签更改为<RNCamera></RNCamera>
。从RNCamera标记中删除aspect属性。