小编Jop*_*eph的帖子

如何检测用户是否已登录Firebase?

我在我的javascript文件中使用firebase节点api进行Google登录.

firebase.initializeApp(config);
let provider = new firebase.auth.GoogleAuthProvider();
firebase.auth().signInWithPopup(provider);
Run Code Online (Sandbox Code Playgroud)

这很好用,用户可以使用他的Google凭据登录.当用户再次访问该页面时,弹出窗口再次打开,但由于他已经登录,弹出窗口关闭而不需要用户进行任何交互.有没有办法在提示弹出窗口之前检查是否已经有登录用户?

javascript web firebase firebase-authentication

78
推荐指数
7
解决办法
8万
查看次数

如何在我的页面操作弹出窗口中获取当前打开的选项卡的URL?

我想创建一个自动登录我的服务器的扩展.所以我创建了一个后台页面来检查当前的URL,如果它符合我的URL正则表达式,我将显示页面操作图标.点击页面操作,我打开一个带有一些字段的弹出窗口.我需要获取当前打开的URL并将其填入弹出窗口中的一个字段中(例如,当我们单击标准书签页面操作时,URL会自动填充打开的弹出窗口).如何在Chrome扩展程序中执行此类操作?我尝试了从背景页面到弹出窗口的消息传递,但它无法正常工作.是否可以发送这样的消息?此外,我尝试为弹出的html文件设置onload,但我注意到它没有触发.请建议一种合适的方法来处理这种情况.

javascript google-chrome google-chrome-extension

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

如何从react中的组件实例访问静态函数?

我有一个组件,为它定义了许多静态函数(通过statics组件定义中的属性).我需要在生命周期方法中访问其中一个静态函数componentDidMount.我尝试了以下内容

  • this对象有一个statics属性,但似乎null总是如此
  • this对象也有一个_owner,而后者又有一个statics属性.再一次,这总是如此null

然后我试了一下this.constructor.<static_function>.这对我有用.我只是想知道这是否是访问为组件定义的静态函数的正确方法,还是有其他我不知道的东西.

javascript reactjs

6
推荐指数
2
解决办法
2570
查看次数

无法识别JS服务器

我试图为android设置react native.当我最终尝试使用react-native run-android运行应用程序时,我收到一条消息JS server not recognized, continuing with build....构建成功完成并安装在模拟器上.但由于没有JS服务器,我得到的红色屏幕显示无法下载JS包.

android react-native

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

Javascript缩小比较语句

我正在查看由闭包生成的一个缩小的js文件.我发现无论我在哪里检查变量和字符串之间的相等性,

a == "13" || a == "40"
Run Code Online (Sandbox Code Playgroud)

闭合取代它

"13" == a || "40" == a
Run Code Online (Sandbox Code Playgroud)

为什么要进行此修改?这里有一些性能优势吗?

javascript minify google-closure-compiler

5
推荐指数
2
解决办法
781
查看次数

如何在点击处理程序中获取与event.target元素对应的React组件实例?

这是我的React组件类

class TestInstance extends React.Component {
    onClick(e) {
        //When the user clicks in the button, 
        //I need to read the custom-id property here
    }

    render() {
        return (
            <Wrapper onClickCapture={this.onClick}>
                <div>
                    <button custom-data={{test: 'test data'}}>Click Me</button>
                </div>
            </Wrapper>
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

在这里,我正在监听包装节点下发生的所有单击事件。每当单击时,我都需要找出与之关联的react组件实例e.target以及该实例的custom-data属性值。将有多个这样的孩子,其custom-dataprop的值不同。每当单击这样的元素时,我都希望提取该元素的值以支持其工作custom-data。在reactjs中做到这一点的最佳方法是什么?一种方法是导航整个子树,并将e.target实例与每个子树的DOM元素共同映射。我也发现e._targetInst._currentElement.props给了我道具的价值。但是我不知道这些未记录的变量有多可靠。是否有任何记录的解决方案?基本上,我正在寻找能够给我ReactDOM.findDOMNode相反效果的东西。我已经有一个DOM节点,并且需要与之关联的React元素。

javascript reactjs

5
推荐指数
1
解决办法
8541
查看次数

如何使用匹配长度的$ string替换正则表达式匹配

我有一个字符串

test ="    abc"
Run Code Online (Sandbox Code Playgroud)

我需要用$符号替换'=''和'abc'之间的每个空格.所以这里它应该成为

test ="$$$$abc"
Run Code Online (Sandbox Code Playgroud)

我想这样做.

str.replace(/(=")(\s+)/g,"$1" + "$2".replace(/\s/g, "$"))
Run Code Online (Sandbox Code Playgroud)

我打算做的是用$ 1我正在提取="字符串的一部分.然后我试图将正则表达式的第二个匹配($ 2)转换为字符串.我认为"$ 2"会给我在扩展$ 2反向引用之后的字符串''.然后使用扩展的字符串我试图再次调用replace以尝试将这些空格转换为$.之后我将$ 1和替换的$ 2追加到get ="$ $$$.但我意识到2美元不会扩展到''.是否有某种方法可以操作反向引用的字符串并使用该操作版本来替换我的字符串的内容.

javascript regex

4
推荐指数
1
解决办法
1043
查看次数

使用受邀用户列表发起环聊

我有一个网站,其中有些人使用有效的Gmail邮件进行讨论.如果讨论中的其中一个点击谷歌视频群聊按钮,我需要在已经邀请的讨论中启动与用户列表的视频群聊,即我需要避免在打开视频群聊应用时出现的添加参与者弹出窗口.有没有办法做到这一点?我浏览了文档,但找不到任何邀请参与者的API.

google-api google-plus hangout

4
推荐指数
1
解决办法
3742
查看次数

有什么细节可以从webkitStorageInfo.queryUsageAndQuota()获得

webkitStorageInfo.queryUsageAndQuota()用于查找使用我认为的HTML5文件系统API存储在文件系统中的文件的使用情况统计信息.任何人都可以给我提供可以在提供给该函数的回调中获得的详细信息.

window.webkitStorageInfo.queryUsageAndQuota(webkitStorageInfo.PERSISTENT, function() {
   //what all details can be obtained in this function as its arguments?
})
Run Code Online (Sandbox Code Playgroud)

html5 google-chrome google-chrome-extension fileapi html5-filesystem

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