小编ses*_*eva的帖子

Docker Ubuntu背后的代理

查看文档,没有关于如何在代理后面运行它的说明. https://docs.docker.com/installation/ubuntulinux/

在论坛上阅读,指令是更新/ etc/default/docker以导出代理设置.

 export http_proxy="http://127.0.0.1:3128/"
 export https_proxy="http://127.0.0.1:3128/"
 export HTTP_PROXY="http://127.0.0.1:3128/"
 export HTTPS_PROXY="http://127.0.0.1:3128/"
Run Code Online (Sandbox Code Playgroud)

然后我们重启/启动docker

 sudo service docker start
Run Code Online (Sandbox Code Playgroud)

在容器内部,如果我运行'apt-get',npm install,bower install我无法通过代理.

不知道我错过了什么.

docker

38
推荐指数
4
解决办法
5万
查看次数

useReducer操作分派两次

情境

我有一个返回操作的自定义钩子。父组件“容器”利用自定义钩子并将动作作为道具传递给子组件。

问题

当从子组件执行该操作时,实际的分派发生两次。现在,如果子级直接利用该钩子并调用了该动作,则调度仅发生一次。

如何复制它:

打开下面的沙箱,然后在chrome上打开devtools,这样您就可以看到我添加的控制台日志。

https://codesandbox.io/s/j299ww3lo5?fontsize=14

Main.js(儿童组件),您将看到我们调用props.actions.getData()

在DevTools上,清除日志。在“预览”上,在表单上输入任何值,然后单击按钮。在控制台日志上,您将看到类似redux-logger的操作,并且您将注意到STATUS_FETCHING操作被执行了两次而没有更改状态。

现在转到Main.js并注释掉第9行和第10行的注释。我们现在基本上是在直接使用自定义钩子。

在DevTools上,清除日志。在“预览”上,在表单上输入任何值,然后单击按钮。现在,在控制台日志上,您将看到STATUS_FETCHING仅执行一次,并且状态会相应更改。

尽管没有明显的性能损失,但我不明白为什么会这样。我可能过于关注挂钩,而我却错过了一些愚蠢的事情……请把我从这个难题中解脱出来。谢谢!

reactjs react-hooks

12
推荐指数
5
解决办法
1643
查看次数

聚合物单元测试模拟依赖性

我刚刚开始使用聚合物.我试图单元测试一个具有依赖关系的自定义元素,我想伪造/嘲笑这些.我找到了Scott Miles关于如何模拟core-ajax实现的建议.我认为我可以轻松地遵循该模式,但这只有在我的元素不导入要模拟的东西(在本例中为core-ajax)元素时才有效.如果它确实导入它,那么当测试试图运行时我得到

'未捕获NotSupportedError:无法在'Document'上执行'registerElement':类型'core-ajax'的注册失败.具有该名称的类型已经注册.

如果我可以做一些像document.unregister核心-ajax元素并在我的测试中再次导入它,我会更开心!聚合物很棒但是如果我不能对其进行单元测试,那么它会带来很大的风险(至少在构建需要维护/更改的应用程序时)

你们是怎么解决这个问题的?我一直在深入研究Polymer和PolymerLab元素的回购,其中大多数缺乏测试.到目前为止,我没有找到很多关于如何做的参考.

谢谢您的帮助!

圣地亚哥

Scotts的建议是:

而不是导入core-ajax/core-ajax.html,创建自己的core-ajax元素.

<polymer-element name="core-ajax" attributes="response">
<script>
  Polymer('core-ajax', {
    attached: function() {
      this.response = ['a', 'b', 'c'];
    }
 });
</script>
</polymer-element>
Run Code Online (Sandbox Code Playgroud)

显然,这只是一个例子,实际的实现取决于所需的模拟行为.

这只是解决问题的一种方法,还有很多其他方法.我很想知道你找到了什么(方便).

unit-testing polymer

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

在 React 和 React-Native 之间共享组件/逻辑

我正在尝试创建一个针对网络和移动设备的应用程序。这个想法是创建渲染方式不同但共享逻辑的 React 组件。

\n\n

React v.014 博客文章指出“我们\xe2\x80\x99将主要的react包分成两部分:react和react-dom。这为编写可以在Web版本的React和React Native之间共享的组件铺平了道路。 \nReact 包包含 React.createElement、.createClass、.Component、.PropTypes、.Children 以及与元素和组件类相关的其他帮助程序。我们将这些视为构建组件所需的同构或通用帮助程序。

\n\n

我找到了一个很好的例子(http://blog.benoitvallon.com/projects/a-mobile-desktop-and-website-app-with-the-same-code/),它使用相同的概念并完成了结果(react-native 0.13.6 和react 0.14.2)。

\n\n

在此代码中,您将看到没有什么特别的,只是关于如何扩展 React-Native 命名约定系统以包含 Web 版本的聪明想法。当我升级到最新的react-native时,它会抱怨任何使用react包中的React.Component而不是react-native的组件。

\n\n

这是令人困惑的,因为 0.14 版本似乎表明这正是移动固件的点。让React创建组件,让react-dom处理DOM,让react-native处理ios/android视图。

\n\n

我认为这是一个绝妙的主意,但我似乎无法解决这个特定的问题。任何想法、想法将不胜感激。

\n\n

谢谢

\n

reactjs react-native

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

jQuery转义选择器无法识别的表达式:[data-route = search \\ / child]

我似乎找不到解决此问题的方法。

在SPA应用中,我有不同的路线。#/ search#/ other#/ search / child。我解析主题标签并显示/隐藏一个包含属性data-route的元素。

当路径由一部分#/搜索组成时,一切正常。jQuery正在执行$('[data-route = search]')。

当我添加第二部分#/ search / child时,我将选择器转义为“ search \ / child”,但是Jquery无法运行选择器,并显示以下错误msg:

Uncaught Error: Syntax error, unrecognized expression: [data-route=search\\/child] jquery.js:1850Sizzle.error jquery.js:1850tokenize jquery.js:2460select jquery.js:2847Sizzle jquery.js:1289jQuery.fn.extend.find jquery.js:5730jQuery.fn.jQuery.init jquery.js:197jQuery jquery.js:63allroutes MainView.js:21apply director.js:511_every director.js:308Router.invoke director.js:516updateAndInvoke director.js:474Router.dispatch director.js:482handler director.js:203onchange director.js:76
Run Code Online (Sandbox Code Playgroud)

如果我打开控制台并执行相同的选择器,它就可以正常工作。

var route = window.location.hash.slice(2);
route =  route.replace('/','\\\\/');
var sections = $('[data-route]');
var selector = "[data-route=" + route + "]";
var section = $(selector);

if (section.length) {
    sections.hide(250);
    section.show(250);
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery flatiron.js

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