反应原生相机未定义

问题描述 投票:0回答:3
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从头开始重新创建项目但我仍然收到错误。

camera react-native
3个回答
1
投票

确保您已正确设置,包括根据$ react-native link react-native-camera运行documentation和其他设置。


0
投票

你可以尝试使用

var Camera = require('react-native-camera')

0
投票

替换线:

import Camera from 'react-native-camera';

有了这条线:

import {RNCamera} from 'react-native-camera';

<Camera></Camera>标签更改为<RNCamera></RNCamera>。从RNCamera标记中删除aspect属性。

© www.soinside.com 2019 - 2024. All rights reserved.