我尝试expo-firebase-analytics在 Expo Go 应用程序中使用该包作为第一步,以确保在查看它是否在独立应用程序中工作之前设置正确。但它现在不起作用。我的 Firebase 分析控制台上未记录事件。我正在遵循此安装指南:https ://docs.expo.io/versions/latest/sdk/firebase-analytics/
我跑了expo install expo-firebase-analytics。我也跑过expo install firebase。我已经设置了一个 Firebase Web 项目并将配置添加到我的app.json.
{
"expo": {
...
"web": {
"config": {
"apiKey": "AIxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"authDomain": "my-app.firebaseapp.com",
"projectId": "my-app",
"storageBucket": "my-app.appspot.com",
"messagingSenderId": "mySenderId",
"appId": "1:myApp:web:myAppId",
"measurementId": "G-MYMEASUREMENTID"
}
},
}
Run Code Online (Sandbox Code Playgroud)
这是我的 App.js 文件
import React, { useEffect } from "react";
import { Text, View } from "react-native";
import * as Analytics from 'expo-firebase-analytics';
export default function App() {
useEffect(() => { …Run Code Online (Sandbox Code Playgroud) 我正在编写一个 MERN 应用程序,并尝试使用db.getCollectionInfos 方法获取 MongoDB 数据库中的所有集合名称。但是,我收到以下错误:
Error: db.getCollectionInfos is not a function
这是我的代码。数据库已连接,因为它已连接并返回文档数据以及我应用程序中的其他路由。
有人可以帮我弄清楚我做错了什么吗?
mongoose.connect(process.env.DATABASE, { useNewUrlParser: true });
const db = mongoose.connection;
app.post("/fetchdatabasecollections", (req, res) => {
let regex = /someRegEx/g;
let collections = db.getCollectionInfos({ name: { $regex: regex } });
})
Run Code Online (Sandbox Code Playgroud) 我正在使用@react-navigation/stack版本^5.5.1. 我试图在堆栈导航的不同屏幕上显示不同的标题。例如,在 上Master,我不需要标题,即headerMode="none";在 上Home,我想要一个自定义标头,在 上,Details我想要一个不同的自定义标头。我该如何实现这一目标?这是我当前的代码:
const AppStack = () => {
return (
<NavigationContainer>
<Stack.Navigator>
<Stack.Screen name="Master" component={ Master } />
<Stack.Screen name="Home" component={ Home } />
<Stack.Screen name="Details" component={ Details } />
</Stack.Navigator>
</NavigationContainer>
)
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Wikipedia API 来检索文章标题和文章文本的片段。但是当我尝试访问这些属性时,出现错误“无法读取未定义的属性”。
这是我的 JSON 响应:
{
"batchcomplete": "",
"continue": {
"gsroffset": 10,
"continue": "gsroffset||"
},
"query": {
"pages": {
"13834": {
"pageid": 13834,
"ns": 0,
"title": "\"Hello, World!\" program",
"index": 6,
"extract": "<p>A <b>\"Hello, World!\" program</b> is a computer program that outputs or displays \"Hello, World!\" to a user. Being a very simple program in most programming languages, it is often used to illustrate the</p>..."
},
"6710844": {
"pageid": 6710844,
"ns": 0,
"title": "Hello",
"index": 1,
"extract": "<p><i><b>Hello</b></i> …Run Code Online (Sandbox Code Playgroud) 我希望为React Router应用程序实现真实世界的身份验证。我见过的每个教程都fakeAuth用于模拟身份验证,但实际上并没有实现真实世界的身份验证。我正在尝试实际实施身份验证。这可能吗?
现在,我发送jwt给后端,以检查它是否在返回之前有效Component我想渲染-Redirect到Login如果jwt认证失败,或者render Dashboard如果它是有效的jwt。问题是ProtectedRoute是return荷兰国际集团的redirect到/login后端之前return荷兰国际集团是否jwt是有效还是无效。
如何在我的React-Router应用程序中获得真实世界的身份验证?这甚至可能吗?
const PrivateRoute = ({ component: Component, ...rest }) => {
const [auth, setAuth] = useState(false);
useEffect(() => {}, [auth])
useEffect(() => {
// send jwt to API to see if it's valid
let token = localStorage.getItem("token");
if (token) {
fetch("/protected", {
method: "POST", …Run Code Online (Sandbox Code Playgroud) react-native ×2
expo ×1
express ×1
firebase ×1
javascript ×1
json ×1
jwt ×1
mongodb ×1
mongoose ×1
node.js ×1
react-router ×1