小编Luk*_*uke的帖子

在测试具有RequireJS依赖性的es6模块时,在Jest中"定义未定义"

我有一个无法运行的Jest测试套件,因为它尝试测试的组件取决于RequireJS模块.这是我看到的错误:

 FAIL  __tests__/components/MyComponent.test.js
  ? Test suite failed to run

    ReferenceError: define is not defined

      at Object.<anonymous> (node_modules/private-npm-module/utils.js:1:90)
Run Code Online (Sandbox Code Playgroud)

该组件具有以下导入:

import utils from 'private-npm-module';
Run Code Online (Sandbox Code Playgroud)

private-npm-module设置,如下所示:

define('utils', [], function() {
  return {};
});
Run Code Online (Sandbox Code Playgroud)

MyComponent使用babel进行转换并在浏览器中运行时,依赖项运行正常.此问题仅影响单元测试.如何让我的测试套件在具有RequireJS依赖关系的组件上运行?

babel-jestscriptPreprocessor在package.json的jest配置中使用我的.我正在使用jest v0.15.1.

reactjs webpack jestjs babeljs babel-jest

12
推荐指数
1
解决办法
6216
查看次数

DictionarySectionHandler和NameValueSectionHandler之间有区别吗?

在.NET中,我们可以使用<configSections>元素创建自定义配置节,如下所示:

<configuration>
  <configSections>
    <section name="dictionarySample"
             type="System.Configuration.DictionarySectionHandler"/>
    <section name="nameValueSample"
             type="System.Configuration.NameValueSectionHandler" />
  </configSections>
  <dictionarySample>
    <add key="key1" 
         value="value1"/>
  </dictionarySample>
  <nameValueSample>
    <add key="key2" 
         value="value2" />
  </nameValueSample>
</configuration>
Run Code Online (Sandbox Code Playgroud)

上面,我定义了两个部分.一种类型DictionarySectionHandler,另一种类型NameValueSectionHandler.

据我所知,这两个处理程序以完全相同的方式使用,并导致相同的配置部分.

那么,是否存在差异,或者我可以互换使用它们吗?

.net c# configuration app-config configsection

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

将Gadfly直接渲染到Gtk画布上

是否有可能将牛fly图直接渲染到画布上?我想用gtk开发一个Julia GUI,它渲染了Gadfly图.

我希望有类似的东西:

some_plot = plot(x=[1,2,3],y=[4,5,6])
draw(ctx::CairoContext, some_plot)
Run Code Online (Sandbox Code Playgroud)

要么

draw(c::GtkCanvas, some_plot)
Run Code Online (Sandbox Code Playgroud)

我当前的方法保存了一个png然后加载图像.显然不是最佳的:

ctx = getgc(canvas)
canvas_w = width(canvas)
canvas_h = height(canvas)

save(ctx)
set_source_rgb(ctx,1,1,1)
rectangle(ctx,0,0,canvas_w,canvas_h)
fill(ctx)
restore(ctx)

some_plot = plot(x=[1,2,3],y=[4,5,6])
draw(PNG("myplot.png", 8inch, 4inch), some_plot)

save(ctx)
image = read_from_png("myplot.png")
w = image.width
h = image.height
translate(ctx, canvas_w/2, canvas_h/2)
scale(ctx, canvas_w/w, canvas_h/h)
translate(ctx, -0.5*w, -0.5*h)
set_source_surface(ctx, image, 0, 0)
paint(ctx)
restore(ctx)
Run Code Online (Sandbox Code Playgroud)

谢谢

gtk julia gadfly

9
推荐指数
1
解决办法
758
查看次数

"身份"是现实世界物体的可选特征吗?

在某处,我读过

  1. 一个对象有三个特征:
    • 国家(例如姓名)
    • 行为(例如阅读)
    • 身份(学生的唯一身份证号码)

根据这些信息,每个对象都将具有唯一的标识,因此类的所有对象将彼此不同.

但,

  1. 在许多其他地方,我读过对象有两个特征:
    • 行为

题:

哪一个是真的?对象有2个特征还是3个特征?

假设有两个相同品牌,外观,形状,大小和颜色的橡皮擦.

那么,这两个对象应该被视为"相等的对象",因为没有什么可以唯一地识别它们?

oop

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

如何在React中绘制红色水平线

如何使用动态颜色在反应组件中绘制水平线(hr)?

这是我到目前为止所拥有的:

render {
    let color = 'red';
    return (
        <div> 
            There is a red HR
           <hr />
        <div>
    )
}
Run Code Online (Sandbox Code Playgroud)

html colors reactjs

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

反应redux redux-saga的集成测试

我有这样的项目结构:

app/
  global/
    styles/
    components/
  scenes/
    Home/
      actions.js
      constants.js
      index.jsx
      reducer.js
      sagas.js
      styles.styl
      index.spec.jsx
    some-other-scene/
      actions.js
      constants.js
      index.jsx
      reducer.js
      sagas.js
      styles.styl
      index.spec.jsx
Run Code Online (Sandbox Code Playgroud)

所以我对使用这种结构的单元测试没有任何问题,但我对如何构建集成测试感到困惑.对于我的单元测试,我将每个场景组件导出为一个类

export class SomeComponent extends Component {}
Run Code Online (Sandbox Code Playgroud)

并作为redux连接组件

export default connect(
  mapStateToProps,
  mapDispatchToProps
)(SomeComponent)
Run Code Online (Sandbox Code Playgroud)

因此,对于第一种导出方式(类)我是单元测试它,但对于第二种方式(连接组件方式),我不确定如何具体如何在react/redux中进行集成测试.我在互联网上搜索了这个,但没有任何接近这个结构.

所以:

  1. 是react/redux/middleware(在这种情况下是redux saga)中的集成测试,一个组件如何与redux和中间件集成.
  2. 或者它是关于整个应用程序如何与所有安装的组件一起工作?
  3. 如果它是#1这意味着每个组件应该有一个集成测试文件来测试组件如何与redux和中间件集成,或者如果它是#2那么它是一个测试文件,将所有组件测试为一个应用程序?

另外,如果它是#1那么我应该如何通过反应路由器测试路由?

integration-testing reactjs redux redux-saga react-redux

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

如果用户在页面名称后输入尾随的"/"(或"/"之后的任何内容),如何将用户重定向到错误404页面?

在Apache/Linux服务器上,如果用户在页面名称后输入尾随的"/"(或"/"之后的任何内容),如何将用户重定向到错误404页面?

例如,此URL应指向错误页面:

http://www.example.com/contactus.php/someextrastuffhere
Run Code Online (Sandbox Code Playgroud)

鉴于此网址不应:

http://www.example.com/contactus.php?name=john+smith&email=johnsmith@webpage.com
Run Code Online (Sandbox Code Playgroud)

但是,后一个URL会破坏我的网站.

这可以通过简单的.htaccess指令解决吗?

php apache .htaccess mod-rewrite redirect

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

分裂为","但不是"/"

问题:如何编写表达式来分割字符串','而不是'/,'?后来我想,以取代'/,'', '.

细节...

分隔符:','

Skip Char:'/'

输入示例:"Mister,Bill,is,made,of/,clay"

我想将此输入拆分为一个数组: {"Mister", "Bill", "is", "made", "of, clay"}

我知道如何使用char prev, cur;和一些索引器这样做,但这似乎是beta.

Java Regex具有拆分功能,但我不知道如何在C#中复制此行为.

注意:这不是一个重复的问题,这是相同的问题,但对于不同的语言.

c# regex arrays string split

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

Javascript正则表达式找到不以"my:"开头的单词

我正在尝试编写一个正则表达式,它将找到不以"my:"开头的花括号之间的所有值.例如,我想捕获{this}但不捕获{my:monkey}.

捕获所有内容的模式是:

\{([^\}]*)\}
Run Code Online (Sandbox Code Playgroud)

我无法让它上​​班.我到目前为止最接近的一次是:

\{[^my:]*([^\}]*)\}
Run Code Online (Sandbox Code Playgroud)

这会失败,因为它只会忽略以"m","y"或":"开头的标签.

我敢肯定有一个命令我忽略了把"我的:"视为一个块.

(注意:必须适用于Javascript)

javascript regex

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

Java二维数组定义

我有一个基本的问题.

例如:

int a[][] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}} 
Run Code Online (Sandbox Code Playgroud)

我们说它是[3] [4],因为它有3个元素,每个元素都有自己的4个元素.

但怎么样:

int a[][] = {{1},{5,6,7},{9,10,11,12}} 
Run Code Online (Sandbox Code Playgroud)

还在[3] [4]吗?


更新

所以基于下面的有用评论,我的第一个例子可以写成[3] [4]数组,但第二个例子不能像那样表示,对吧?

java arrays definition dimensions multidimensional-array

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