小编use*_*183的帖子

React.js - 访问组件方法

为什么我不能在ReactJS中从"外部"访问组件方法?为什么不可能,有没有办法解决它?

考虑一下代码:

var Parent = React.createClass({
    render: function() {
        var child = <Child />;
        return (
            <div>
                {child.someMethod()} // expect "bar", got a "not a function" error.
            </div>
        );
    }
});

var Child = React.createClass({
    render: function() {
        return (
            <div>
                foo
            </div>
        );
    },
    someMethod: function() {
        return 'bar';
    }
});

React.renderComponent(<Parent />, document.body);
Run Code Online (Sandbox Code Playgroud)

javascript dom reactjs

161
推荐指数
4
解决办法
14万
查看次数

Node.js - 超出最大调用堆栈大小

当我运行我的代码时,Node.js抛出"RangeError: Maximum call stack size exceeded"了太多递归调用引起的异常.我试图增加Node.js堆栈大小sudo node --stack-size=16000 app,但Node.js崩溃没有任何错误消息.当我在没有sudo的情况下再次运行时,Node.js打印出来'Segmentation fault: 11'.有没有可能在不删除递归调用的情况下解决这个问题?

谢谢

stack-overflow recursion callstack node.js

68
推荐指数
4
解决办法
11万
查看次数

Immutable.js关系

想象一下约翰有两个孩子爱丽丝和鲍勃的情况,鲍勃有一只猫猎户座.

var Immutable = require('immutable');

var parent = Immutable.Map({name: 'John'});
var childrens = Immutable.List([
    Immutable.Map({name: 'Alice', parent: parent}),
    Immutable.Map({name: 'Bob', parent: parent})
]);
var cat = Immutable.Map({name: 'Orion', owner: childrens.get(1)});
Run Code Online (Sandbox Code Playgroud)

几年后,约翰想要重命名为简.

var renamedParent = parent.set('name', 'Jane');
Run Code Online (Sandbox Code Playgroud)

......让孩子们了解它.

childrens = childrens.map(function(children) {
    children.set('parent', renamedParent);
});
Run Code Online (Sandbox Code Playgroud)

然后我必须更新cat因为Bob改变了.

cat = cat.set('owner', childrens.get(1));
Run Code Online (Sandbox Code Playgroud)

当一个对象发生变化时,是否可以自动更新所有相关对象?我看了Cursors,但我不确定它们是否是解决方案.如果有可能,你能举个例子吗?

javascript reactjs immutable.js

26
推荐指数
1
解决办法
6729
查看次数

在TensorFlow中使用LSTM-CGAN生成MNIST编号

本文的启发,我正在尝试构建一个条件GAN,它将使用LSTM生成MNIST数字.我希望我使用与图像波纹相同的架构(除了本文中的鉴别器中的双向RNN ):

在此输入图像描述

当我运行这个模型时,我得到了非常奇怪的结果.此图显示了我的模型在每个纪元后生成3号.看起来应该更像这样.这真的很糟糕.

在此输入图像描述

我的鉴别器网络的丢失真的快速下降到接近零.然而,我的发电机网络的损失在一些固定点附近振荡(可能缓慢地发散).我真的不知道发生了什么.这是我的代码中最重要的部分(完整代码在这里):

timesteps = 28
X_dim = 28
Z_dim = 100
y_dim = 10

X = tf.placeholder(tf.float32, [None, timesteps, X_dim]) # reshaped MNIST image to 28x28
y = tf.placeholder(tf.float32, [None, y_dim]) # one-hot label
Z = tf.placeholder(tf.float32, [None, timesteps, Z_dim]) # numpy.random.uniform noise in range [-1; 1]

y_timesteps = tf.tile(tf.expand_dims(y, axis=1), [1, timesteps, 1]) # [None, timesteps, y_dim] - replicate y along axis=1

def discriminator(x, y): …
Run Code Online (Sandbox Code Playgroud)

python neural-network lstm tensorflow rnn

13
推荐指数
1
解决办法
734
查看次数

Haskell中的惯用状态循环

在Haskell中是否存在表达以下代码的惯用方法?

main :: IO ()
main = loop initState1 initState2 initState3

loop :: State1 -> State2 -> State3 -> IO ()
loop s1 s2 s3 = do
  s1' <- runService1 s1
  s2' <- runService2 s2
  s3' <- runService3 s3
  loop s1' s2' s3'
Run Code Online (Sandbox Code Playgroud)

这段代码非常冗长,所以我可能会做一些奇怪的事情.

haskell

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

反应式编程 - N秒内的值大于X.

我有一个流randStream,每半秒发出一次随机值boolStream,并将值转换randStream为布尔值.

let randStream = Kefir.fromPoll(500, () => Math.random())
let boolStream = Kefir.map((rand) => rand > 0.5)
Run Code Online (Sandbox Code Playgroud)

我想trueboolStream发射true5秒(连续)时发射.否则是emit假的.

我正在使用Kefir.js库.

你有什么想法?谢谢.

javascript reactive-programming

7
推荐指数
1
解决办法
107
查看次数

Clojure - 加速大文件处理

我需要读取大文件(~1GB),处理它并保存到db.我的解决方案如下:

data.txt中

格式: [id],[title]\n

1,Foo
2,Bar
...
Run Code Online (Sandbox Code Playgroud)

(ns test.core
  (:require [clojure.java.io :as io]
            [clojure.string :refer [split]]))

(defn parse-line
  [line]
  (let [values (split line #",")]
    (zipmap [:id :title] values)))

(defn run
  []
  (with-open [reader (io/reader "~/data.txt")]
    (insert-batch (map parse-line (line-seq reader)))))

; insert-batch just save vector of records into database
Run Code Online (Sandbox Code Playgroud)

但是这段代码效果不好,因为它首先解析所有行,然后将它们发送到数据库中.

我认为理想的解决方案是read line -> parse line -> collect 1000 parsed lines -> batch insert them into database -> repeat until there is no lines.不幸的是,我不知道如何实现这一点.

clojure large-files

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

在Doctrine\ORM\PersistentCollection中定义自定义方法

我正在获取具有多对多关系的数据,并且我想定义acustom方法.有可能(以及如何)使用类似的东西:

$hotel = $entityManager->getRepository('Hotels')->findOneById(1);
$types = $hotel->getTypes(); //$types is instance of **Doctrine\ORM\PersistentCollection**
$types->myCustomFunction(); //do something
Run Code Online (Sandbox Code Playgroud)

php doctrine doctrine-orm

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

使用 Google Mock 实现 Mock 方法

我正在millis使用 Google Mock嘲笑 Arduino方法。此方法返回自设备启动以来的毫秒数。我想在每个方法调用中返回增加的数字(范围 0 到无穷大)。

到目前为止,我正在嘲笑这个函数:

EXPECT_CALL(*arduino, millis())
  .WillOnce(Return(0))
  .WillOnce(Return(1))
  .WillOnce(Return(2))
  // and so on...
Run Code Online (Sandbox Code Playgroud)

但这是不切实际的。有没有更好的方法可以处理无限次调用?

c++ unit-testing googletest googlemock gmock

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

Haskell:从leafs到root的递归

我有一个基本数学运算表达式的AST:

data Expr = Constant Int
          | Variable String
          | Add Expr Expr
          | Multiply Expr Expr
          deriving (Show)
Run Code Online (Sandbox Code Playgroud)

我还有一个非常简单的函数,简化了给定的表达式:

simplify :: Expr -> Expr
simplify (Add (Constant 0) e) = simplify e
simplify (Add e (Constant 0)) = simplify e
simplify (Add (Constant a) (Constant b)) = Constant (a + b)
simplify (Add e1 e2) = Add (simplify e1) (simplify e2)
simplify (Multiply (Constant 0) _) = Constant 0
simplify (Multiply _ (Constant 0)) = Constant 0
simplify (Multiply …
Run Code Online (Sandbox Code Playgroud)

haskell

3
推荐指数
1
解决办法
96
查看次数

Doctrine 2 findBy*返回对象

是否可以更改findBy*方法以使用实体而不是数组返回对象(我的自定义)?

php doctrine doctrine-orm

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

Haskell - 模糊的类功能

我正在制作控制台程序,我将大量使用文本菜单.我写了一个Menu带有函数的类,choices它返回可能的菜单选项parseChoice字符串和将用户输入的字符串转换为菜单项的函数.

data MainMenu = FirstItem | SecondItem

class Menu a where
  choices :: String -- ERROR HERE
  parseChoice :: String -> Maybe a

instance Menu MainMenu where
  choices = "1) first choice\n2) second choice"
  parseChoice "1" = Just FirstItem
  parseChoice "2" = Just SecondItem
  parseChoice _ = Nothing

getMenuItem :: Menu a => IO a
getMenuItem = do
  putStrLn choices -- ERROR HERE
  choice <- getLine
  case parseChoice choice of
    Just item -> return …
Run Code Online (Sandbox Code Playgroud)

haskell

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