Все запросы с использованием SDK облачного хранилища Firebase приводят к выводу «нет объектов с нужной ссылкой». Тот же код, созданный с помощью expo и React Native, отлично работает на компьютере друга. Другие службы Firebase, похоже, работают, например Firestore и облачный обмен сообщениями Firebase.
Это перехватчик, используемый для вызова запроса файла загрузки Firebase:
import { SettingsToolbar } from "@/components/screens/settings/Toolbar";
import { Avatar } from "@/components/ui/Avatar";
import { Button } from "@/components/ui/Button";
import { Input, InputBox, InputLabel } from "@/components/ui/Input";
import { Tags } from "@/components/ui/Tags";
import { ToastType } from "@/components/ui/Toast";
import { UserRepo } from "@/db/user";
import { useTheme } from "@/hooks/useTheme";
import { trimAll } from "@/lib/utils";
import { Gender } from "@/models/models";
import { useShowToast } from "@/providers/toastProvider";
import { useUserContext } from "@/providers/userProvider";
import { Timestamp } from "@react-native-firebase/firestore";
import * as ImagePicker from "expo-image-picker";
import { router } from "expo-router";
import { Pencil } from "lucide-react-native";
import { useCallback, useState } from "react";
import {
KeyboardAvoidingView,
Pressable,
ScrollView,
View,
} from "react-native";
import { GenderSelect, InterestedInSelect } from "./signup";
import { useUploadFile } from "@/hooks/useFileUpload";
export default function Settings() {
const theme = useTheme();
const user = useUserContext();
const showToast = useShowToast();
const { uploadFile, downloadURL } = useUploadFile();
const [avatar, setAvatar] = useState(user?.avatar || "");
const [username, setUsername] = useState(user?.username || "");
const [gender, setGender] = useState(user?.gender || "male");
const [lookingFor, setLookingFor] = useState(user?.lookingFor[0] || "female");
const [tags, setTags] = useState(
user?.tags.filter((v) => v !== user.gender) || [],
);
const pickImage = async () => {
// No permissions request is necessary for launching the image library
let result = await ImagePicker.launchImageLibraryAsync({
mediaTypes: ImagePicker.MediaTypeOptions.All,
allowsEditing: true,
aspect: [1, 1],
quality: 1,
});
if (!result.canceled) {
setAvatar(result.assets[0].uri);
uploadFile({ file: result.assets[0] });
return;
}
showToast("Image upload was cancelled", ToastType.WARNING);
};
const updateUser = useCallback(() => {
try {
if (username.length < 3) {
throw Error("Username is too short!");
}
if (trimAll(username) !== username) {
throw Error("Username has incorrect format!");
}
if (username.length > 20) {
throw Error("Username is too long!");
}
if (user) {
const userRepo = new UserRepo(user.id);
//user.avatar = avatar;
user.username = username;
user.gender = gender;
user.tags = [gender, ...tags];
user.lookingFor = [lookingFor, ...tags];
user.lastOnline = Timestamp.now();
if (downloadURL) {
user.avatar = downloadURL;
}
userRepo
.updateUser(user)
.then(() => {
router.back();
showToast("Settings updated", ToastType.INFO);
})
.catch((r) => {
console.error(r);
showToast("Error updating settings", ToastType.ERROR);
});
}
} catch (r) {
{
console.warn(r);
showToast(`${r}`, ToastType.WARNING);
}
}
}, [downloadURL, gender, lookingFor, showToast, tags, user, username]);
return (
Username
Save
);
}
Опять же, эта проблема, похоже, сохраняется только на моем компьютере с моим эмулятором/телефоном. После некоторой отладки я также обнаружил, что не могу даже перечислить элементы в корзине по умолчанию. Я получаю ту же ошибку. Это наводит меня на мысль, что, возможно, ссылка, которая «не» существует, является ссылкой по умолчанию для самого сегмента? Есть идеи, в чем может быть возможная проблема?
Заранее благодарим за помощь.
Все запросы с использованием SDK облачного хранилища Firebase приводят к выводу «нет объектов с нужной ссылкой». Тот же код, созданный с помощью expo и React Native, отлично работает на компьютере друга. Другие службы Firebase, похоже, работают, например Firestore и облачный обмен сообщениями Firebase. Это перехватчик, используемый для вызова запроса файла загрузки Firebase: [code]import { useState } from "react"; import { UseMutateFunction, useMutation } from "@tanstack/react-query"; import { ImagePickerAsset } from "expo-image-picker"; import storage from "@/storage/init";
const pickImage = async () => { // No permissions request is necessary for launching the image library let result = await ImagePicker.launchImageLibraryAsync({ mediaTypes: ImagePicker.MediaTypeOptions.All, allowsEditing: true, aspect: [1, 1], quality: 1, });
if (!result.canceled) { setAvatar(result.assets[0].uri); uploadFile({ file: result.assets[0] }); return; } showToast("Image upload was cancelled", ToastType.WARNING); };
const updateUser = useCallback(() => { try { if (username.length < 3) { throw Error("Username is too short!"); }
if (trimAll(username) !== username) { throw Error("Username has incorrect format!"); } if (username.length > 20) { throw Error("Username is too long!"); }
); } [/code] Опять же, эта проблема, похоже, сохраняется только на моем компьютере с моим эмулятором/телефоном. После некоторой отладки я также обнаружил, что не могу даже перечислить элементы в корзине по умолчанию. Я получаю ту же ошибку. Это наводит меня на мысль, что, возможно, ссылка, которая «не» существует, является ссылкой по умолчанию для самого сегмента? Есть идеи, в чем может быть возможная проблема? Заранее благодарим за помощь.
Все запросы с использованием SDK облачного хранилища Firebase приводят к выводу «нет объектов с нужной ссылкой». Тот же код, созданный с помощью expo и React Native, отлично работает на компьютере друга. Другие службы Firebase, похоже, работают,...
Все запросы с использованием SDK облачного хранилища Firebase приводят к выводу «нет объектов с нужной ссылкой». Тот же код, созданный с помощью expo и React Native, отлично работает на компьютере друга. Другие службы Firebase, похоже, работают,...
Я работаю над проектом Django. Он работает нормально с локальным хранилищем и решил использовать облачное для хранения медиа-хранилища, а по какой-то причине хранилище файлов не переходит на облачное хранилище носителя.
Вот мой файл...
Я работаю над проектом Django. Он работает нормально с локальным хранилищем и решил использовать облачное для хранения медиа-хранилища, а по какой-то причине хранилище файлов не переходит на облачное хранилище носителя.
Вот мой файл...
Я работаю над проектом Django. Он работает нормально с локальным хранилищем и решил использовать облачное для хранения медиа-хранилища, а по какой-то причине хранилище файлов не переходит на облачное хранилище носителя.
Вот мой файл...