小编Sha*_*vim的帖子

在 React 中自动配置 Firebase SDK

  • 我有一个 React 应用程序,我想将它部署到多个环境(开发、登台、生产)。
  • 每个 env 都是一个单独的 Firebase 项目,具有自己的配置(apiKey、databseURL 等)。目前我firebase-config.json为每个 env持有多个,并在源代码中使用一个开关来确定使用哪个。
  • 我正在为该应用程序使用 Firebase 托管。
  • 托管文档的状态,我可以取一个特殊的保留网址/__/firebase/init.json(或脚本/__/firebase/init.js是火力主机)为每个项目单独准备,所以我可以初始化该环境的火力点应用的正确实例。另请参阅此处的博客文章

我无法弄清楚的是:通过网络获取特殊的 js/json 文件是异步的,同时反应应用程序正在初始化并且需要 firebase 应用程序进行身份验证和其他操作。有没有办法在反应启动之前完成 firebase init 并准备好 firebase 应用程序实例?

firebase reactjs firebase-hosting

10
推荐指数
1
解决办法
924
查看次数

BigQuery:删除分区表中的重复项

我有按插入时间划分的BQ表。我正在尝试从表中删除重复项。这些是真正的重复项:对于2个重复的行,所有列均相等-当然,使用唯一键可能会有所帮助:-(

最初,我尝试使用SELECT查询来枚举重复项并将其删除:

SELECT
    * EXCEPT(row_number)
FROM (
    SELECT
    *,
    ROW_NUMBER() OVER (PARTITION BY id_column) row_number
    FROM
    `mytable`)
WHERE
    row_number = 1
Run Code Online (Sandbox Code Playgroud)

这将导致唯一的行,但会创建一个不包含分区数据的新表-不好。

我在这里看到了这个答案,它说明了保留分区的唯一方法是通过上述查询一个一个地遍历它们并保存到特定的目标表分区。

我真正想做的是使用DML DELETE删除适当的重复行。我尝试了类似于此答案建议的内容

DELETE
FROM `mytable` AS d
WHERE (SELECT ROW_NUMBER() OVER (PARTITION BY id_column)
   FROM `mytable ` AS d2
   WHERE d.id = d2.id) > 1;
Run Code Online (Sandbox Code Playgroud)

但是接受的答案无效,并导致BQ错误:

Error: Correlated subqueries that reference other tables are not supported unless they can be de-correlated, such as by transforming them into an efficient JOIN …

google-bigquery bigquery-standard-sql

6
推荐指数
1
解决办法
646
查看次数

Xcode 10:自定义动画过渡被困住

我的应用程序有两个视图控制器(VC A和B)以及它们之间的自定义转换.

当在VC A上使用左向平移手势时,交互式动画过渡在模式上呈现VC B从A向右滑动(从右到左).要关闭VC B,用户可以:

  • 使用右向平移手势:将触发交互式转换,将VC B向右滑动并揭开VC A. VC B的位置由平移手势状态交互确定.交互由UIPercentDrivenInteractiveTransition对象"驱动" .
  • 使用VC B导航栏上的"关闭"按钮.这将触发自定义过渡(向右滑动)而不进行交互(仅动画).

问题是在Xcode 10 Seed(build 10A254a)+ iOS 12 Simulator(X或XR或XS)上进行测试我可以很容易地进入自定义转换永远不会完成且UI处于奇怪状态的状态:

  • UI卡在VC B上,没有手势或点击工作.
  • 该应用程序没有卡住 - 我可以看到conosle日志仍在滚动,netwrok活动正在运行(日志中没有错误)
  • 暂停应用程序处于这种卡住状态我可以看到com.apple.main-thread没有卡住.
  • 当我点击"调试视图层次结构"时,会发生一些奇怪的事情:在SIM屏幕上,我仍然可以看到VC B并禁用所有UI.在视图调试器主视图上 - 我可以看到VC A的子视图被绘制,就像转换完成一样.在视图调试器左侧树视图 - 我可以看到VC B视图层次结构.

此问题从未出现在任何先前版本的Xcode和/或iOS Xcode 10/iOS12之前.

这是animateTransition我的自定义方法UIViewControllerAnimatedTransitioning

func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {

    guard let fromVC = transitionContext.viewController(forKey: .from), let toVC = transitionContext.viewController(forKey: .to) else {
        transitionContext.completeTransition(false)
        return
    }

    let containterView = transitionContext.containerView
    containterView.insertSubview(toVC.view, …
Run Code Online (Sandbox Code Playgroud)

custom-transition ios12 xcode10

3
推荐指数
2
解决办法
570
查看次数

使用 FirebaseUI + React Router 成功登录时重定向

我正在使用FirebaseUI React包进行用户登录/注册。除了在成功登录后无法获得重定向外,我一切正常。

  • StyledFirebaseAuth呈现为我的一个组成部分SignIn 是配置FirebaseUI验证模型组件。
  • SignIn组件被包裹,withRouter以便当我收到成功回调时,我可以访问该history道具并设置为“/”
  • 我确定登录成功,因为我看到signInSuccessWithAuthResult回调和我的onAuthStateChanged听众都以积极的结果触发。

编辑:电子邮件/密码提供程序似乎出现问题,但是当使用 Google 作为登录提供程序时,重定向工作正常。

我究竟做错了什么?这是完整的文件:

import React from "react";

import firebase from 'firebase/app';
import firebaseApp from '../firebaseApp';
import StyledFirebaseAuth from 'react-firebaseui/StyledFirebaseAuth';

import { withRouter } from "react-router";

// Styles
import styles from '../App.css'; // This uses CSS modules.

class SignIn extends React.Component {
  uiConfig = {
    signInFlow: 'redirect',
    signInOptions: [      
      firebase.auth.GoogleAuthProvider.PROVIDER_ID,
      firebase.auth.FacebookAuthProvider.PROVIDER_ID,
      firebase.auth.EmailAuthProvider.PROVIDER_ID,      
    ],
    callbacks: {
      signInSuccessWithAuthResult: (authResult, redirectUrl) => …
Run Code Online (Sandbox Code Playgroud)

firebase reactjs react-router firebase-authentication

2
推荐指数
1
解决办法
4403
查看次数