不同文件 React Native 中未定义的方面
Posted
技术标签:
【中文标题】不同文件 React Native 中未定义的方面【英文标题】:Aspect of undefined in diferent file React Native 【发布时间】:2018-04-26 10:46:32 【问题描述】:我正在尝试访问相机,但出现此错误。我尝试完成人们在其他页面中展示的所有教程以使其正常工作,但我没有相同的 loki。
我在这个文件中输入:\myproject\node_modules\lottie-ios\Example-Swift\Pods\Target Support Files\lottie-ios\Info.plist 并添加:
<key>NSCameraUsageDescription</key>
<string>Feetit Would you like to access Camera</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Feetit Would you like to access Photos</string>
在此之前我安装了这个:
npm install react-native-camera --save
npm install react-native link react-native-camera
之后我尝试使用此代码使相机工作:
import React, Component from 'react';
import Camera from 'react-native-camera';
import View, TouchableHighlight, Text, StyleSheet from 'react-native';
export default class CameraAcess extends Component
takePicture()
const options = ;
//options.location = ...
this.camera.capture(metadata: options)
.then((data) => console.log(data))
.catch(err => console.error(err));
onBarCodeRead(e)
console.log(
"Barcode Found!", "Type: " + e.type + "\nData: " + e.data
);
render()
return (
<View style=styles.container>
<Camera
ref=(cam) =>
this.camera = cam;
onBarCodeRead=this.onBarCodeRead.bind(this)
style=styles.preview>
<TouchableHighlight style=styles.capture onPress=this.takePicture.bind(this)>[CAPTURE]
<Text>Click me</Text>
</TouchableHighlight>
</Camera>
</View>
);
const styles = StyleSheet.create(
container:
flex: 1,
flexDirection: 'row',
,
preview:
flex: 1,
justifyContent: 'flex-end',
alignItems: 'center'
,
capture:
flex: 0,
backgroundColor: '#fff',
borderRadius: 5,
color: '#000',
padding: 10,
margin: 40
);
我得到这个错误'无法读取未定义的属性'方面'。这个错误的文件是另一个,是Camera.js。有人可以告诉我我必须做什么才能让它工作吗?
【问题讨论】:
Camera.js 在哪里.. 你检查过相机权限吗? Camera.js 位于:myproject/node_modules/react-native-camera/src/Camera.js 我必须添加什么权限? 【参考方案1】:我查看了文档并没有在所需的相机上看到这个变量,但是我确实在我构建的一个示例中看到我在相机上设置了这个变量。看看这是否有帮助,因为它可能不是从默认值开始的。
aspect=Camera.constants.Aspect.fill
更改为您的偏好。
【讨论】:
我必须在哪里添加这一行?在我的文件项目中还是在 especif 文件中? 内部相机。在下面做 onBarCodeRead 在文件 Camera.js 我有很多 onBarCodeRead。我的朋友是谁? 在渲染内的相机标签内。它是相机的变量【参考方案2】:如果你在 ios 中遇到这个问题,那么
移除之前安装的 react-native-camera pod。
$ cd ios
$ rm -rf Pods/
$ pod install
然后手动链接 如库中提到的readme
请检查相机所需的权限。
【讨论】:
我试过这样:npm uninstall pods npm install pod 我遇到了同样的问题:(以上是关于不同文件 React Native 中未定义的方面的主要内容,如果未能解决你的问题,请参考以下文章
OneSignal - Android React Native 中未显示弹出通知