小编stu*_*edy的帖子

在React JSX中返回配对元素

问题:

在React中,您希望通过映射数组来创建DOM结构,但数组中的每个项应返回2个元素.例如

import React from 'react'
import _ from 'lodash'

let { Component } = React

export default class DataList extends Component {
  render () {
    let array = [
      {def: 'item1', term: 'term1', obj1: 'rand'}, 
      {def: 'item2', term: 'term2'}
    ]
    return (
      <dl>
        {_.map(array, (item) => {
          return (
            <dt>{item.def}</dt>
            <dd>{item.term}</dd>
          )
        })}
      </dl>
    )
  }
}
Run Code Online (Sandbox Code Playgroud)

React不允许你渲染兄弟姐妹而不将它们包装在容器元素中,这会破坏DOM结构.

javascript reactjs react-jsx

12
推荐指数
2
解决办法
2101
查看次数

使用NodeJS为Google云端存储创建签名网址

我正在尝试为Google云端存储中的私有存储文件创建签名; 这样我就可以分发一个有时间限制的链接.

目前这样做,它的签名太短了......我哪里错了?

var crypto = require("crypto");

var ttl = new Date().getTime() + 3600;
var id = 'the_target_file.txt';
var bucketName = 'bucket_name';
var POLICY_JSON = "GET\n" + "\n" + "\n" + ttl + "\n" + '/' + bucketName + '/' + id;

// stringify and encode the policy
var stringPolicy = JSON.stringify(POLICY_JSON);
var base64Policy = Buffer(stringPolicy, "utf-8").toString("base64");

// sign the base64 encoded policy
var privateKey = "MY_PRIVATE_KEY";
var sha256 = crypto.createHmac("sha256", privateKey);
var signature = sha256.update(new Buffer(base64Policy, "utf-8")).digest("base64");

console.log ( …
Run Code Online (Sandbox Code Playgroud)

sha node.js google-cloud-storage

11
推荐指数
2
解决办法
5450
查看次数

AngularJS服务中的Firebase的AngularFire

在AngularJS中处理Firebase的最佳方式肯定必须来自服务,因此它可供整个应用程序中的所有控制器使用.

我只是无法让它工作!...我第一次尝试使用angularFire(new Firebase(url)),希望我可以绑定到服务的范围,但Angular抱怨它不能$watch.

所以我尝试使用angularFireCollection,如下所示:

app.factory('myService', function myService(angularFireCollection) {
    var url = 'https://myfirebase.firebaseio.com';
    return {
        getAll: function(path) {
            var ref = angularFireCollection(new Firebase(url + '/' + path));
            console.log(ref);
            return ref;
        },
        ...
    };
});
Run Code Online (Sandbox Code Playgroud)

但是,angularFireCollection是一个包含大量方法等的Object,如果我将它绑定到控制器$ scope我只是得到垃圾.它还抱怨它在我尝试使用之前无法调用Firebase功能(例如Error: Firebase.push failed: second argument must be a valid function.)......任何人都有任何想法我会出错?

看到这个PLUNKER

angularjs firebase angularjs-service angularfire

8
推荐指数
2
解决办法
8495
查看次数

通过cljsjs/moment获得Moment在Clojurescript中工作

在我的project.clj中,我已经定义了依赖项

[cljsjs/moment "2.10.6-0"]
Run Code Online (Sandbox Code Playgroud)

我要求在我的cljs文件中使用它

(:require [cljsjs.moment :as m])
Run Code Online (Sandbox Code Playgroud)

我试着像这样使用它

(m/from-now 3485736776)
Run Code Online (Sandbox Code Playgroud)

但它说 Uncaught ReferenceError: cljsjs is not defined

我也试过了

(m/fromNow 3485736776)
Run Code Online (Sandbox Code Playgroud)

以防函数调用错误,但我得到同样的错误......任何想法?

clojurescript momentjs

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

RxJS排队依赖任务

如果我有这样的数组数组

{
    parent: [
        {
            name: 'stu',
            children: [
                {name: 'bob'},
                {name: 'sarah'}    
            ]
        },
        { 
          ...
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

并且我想循环遍历每个父级并循环遍历他们的子系列,这样我就不会启动下一个父级,直到所有子级都被处理(一些长的异步过程),我该如何使用RxJS?

我试过这个:

var doChildren = function (parent) {
    console.log('process parent', parent.name);
    rx.Observable.fromArray(parent.children)
    .subscribe(function (child) {
        console.log('process child', child.name);
        // do some Asynchronous stuff in here
    });
};

rx.Observable.fromArray(parents)
.subscribe(doChildren);
Run Code Online (Sandbox Code Playgroud)

但我让所有的父母都退出了,然后是所有的孩子.

rxjs

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