اذهب إلى المحتوى
  • 0

react native expo camera not defined

السؤال

نشر

قمت باتباع التوثيق هنا https://docs.expo.io/versions/latest/sdk/camera.html 

وقد حصلت من  react native expo camera  على أخطاء مثل _Camera غير محددة 

هل لدى أي شخص بعض التعليمات البرمجية الأساسية حول كيفية الاستفادة من وحدة الكاميرا؟ أو تصحيح الخطأ ؟

Recommended Posts

  • 0
نشر

يبدو أنك لم تقم بثبيت حزمة react native expo camera أو لم تقم بإستدعائها بشكل صحيح

بدايةً يجب عليك تثبيتها كالآتي

expo install expo-camera

وهذا مثال لكيفية إستدعاء الحزمة وإستخدامها

import React, { useState, useEffect } from 'react';
import { StyleSheet, Text, View, TouchableOpacity } from 'react-native';
import { Camera } from 'expo-camera'; // إستدعاء الحزمة بشكل صحيح

export default function App() {
  const [hasPermission, setHasPermission] = useState(null);
  const [type, setType] = useState(Camera.Constants.Type.back);

  useEffect(() => {
    (async () => {
      const { status } = await Camera.requestPermissionsAsync();// طلب الحصول على الإذن
      setHasPermission(status === 'granted');// تعيين المتغير "لديه الإذن" بصائب أو خاطئ بناء على الطلب السابق
    })();
  }, []);

  if (hasPermission === null) { // إذا كان المتغير لديه الإذن يساوي لايوجد نقوم بإرجاع منظر
    return <View />;
  }
  if (hasPermission === false) { // إذا كان المتغير لديه الإذن خاطئ نقوم بإرجاع نص لايوجد لديه وصول
    return <Text>No access to camera</Text>;
  }
  return ( // إذا كان الإذن صائب سنقوم بإعادة هذا المنظر للوصول الى الكامير
    <View style={styles.container}>
      <Camera style={styles.camera} type={type}>
        <View style={styles.buttonContainer}>
          <TouchableOpacity
            style={styles.button}
            onPress={() => {
              setType(
                type === Camera.Constants.Type.back
                  ? Camera.Constants.Type.front
                  : Camera.Constants.Type.back
              );
            }}>
            <Text style={styles.text}> Flip </Text>
          </TouchableOpacity>
        </View>
      </Camera>
    </View>
  );
}

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...