小编pac*_*tie的帖子

在react.js中导出多个模块

react.js新手,并尝试按照教程.不幸的是,页面中给出的代码不起作用.webpack抱怨道

ERROR in ./App.jsx
Module build failed: SyntaxError: Only one default export allowed per module.
Run Code Online (Sandbox Code Playgroud)

不知道如何解决它.谢谢.

=== App.jsx ====

import React from 'react';
import ReactDOM from 'react-dom';
import { Router, Route, Link, browserHistory, IndexRoute  } from 'react-router'

class App extends React.Component {
   render() {
      return (
         <div>
            <ul>
               <li><Link to = "/home">Home</Link></li>
               <li><Link to = "/about">About</Link></li>
               <li><Link to = "/contact">Contact</Link></li>
            </ul>

           {this.props.children}
         </div>
      )
   }
}

export default App;

class Home extends React.Component {
   render() {
      return ( …
Run Code Online (Sandbox Code Playgroud)

reactjs

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

关于错误消息的perl解释器的错误?

当我运行以下代码来检查错误消息时,perl(Ubuntu上的5.14.2)说 Illegal division by zero at test2.pl line 5.

sub dummy   { 
    if ($a>3) {
        $a ++;
    }
    else { printf(1/0);
    }
    return 1;
}
dummy();
Run Code Online (Sandbox Code Playgroud)

但是,如果我删除前面的空格,printf则会显示错误消息 Illegal division by zero at test2.pl line 2.

删除额外空间不应更改此处错误消息中的行号.所以它似乎是perl解释器的一个bug.这是正确的吗?

谢谢.

perl

11
推荐指数
1
解决办法
171
查看次数

尝试使用tcc针对gcc生成的.o文件编译源代码时的奇怪行为

我正在尝试使用tcc(版本0.9.26)针对gcc生成的.o文件编译源代码,但它有奇怪的行为.gcc(版本5.3.0)来自MinGW 64位.

更具体地说,我有以下两个文件(te1.c te2.c).我在windows7框上执行了以下命令

c:\tcc> gcc -c te1.c
c:\tcc> objcopy -O  elf64-x86-64 te1.o   #this is needed because te1.o from previous step is in COFF format, tcc only understand ELF format
c:\tcc> tcc te2.c te1.o
c:\tcc> te2.exe
567in dummy!!!
Run Code Online (Sandbox Code Playgroud)

请注意,它从字符串中删除了4个字节1234567in dummy!!!\n.想知道什么可能出错.

谢谢金

========文件te1.c ===========

#include <stdio.h>

void dummy () {
    printf1("1234567in dummy!!!\n");
}
Run Code Online (Sandbox Code Playgroud)

========文件te2.c ===========

#include <stdio.h>

void printf1(char *p) {
    printf("%s\n",p);
}
extern void dummy();
int main(int argc, char *argv[]) {
    dummy();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

更新1

看到te1.o(由tcc编译的te1.c)和te1_gcc.o(由gcc编译的te1.c)之间的汇编有所不同.在编译的tcc中,我看到lea …

c c++ gcc mingw tcc

10
推荐指数
2
解决办法
408
查看次数

需要从selenium服务器转储具有元素id的整个DOM树

我一直在使用python selenium进行Web自动化测试.自动化的关键部分是为HTML页面中的用户可见对象找到正确的元素.以下API大部分时间都可以使用,但不是所有时间都可以.

find_element_by_xxx,  xxx can be id, name, xpath, tag_name etc. 
Run Code Online (Sandbox Code Playgroud)

当HTML页面太复杂时,我想搜索dom树.想知道是否可以要求selenium服务器序列化整个DOM(使用可用于通过webdriver服务器执行操作的元素id).客户端(python脚本)可以使用自己的搜索算法来查找正确的元素.

请注意,python selenium可以获取整个html页面

drv.page_source
Run Code Online (Sandbox Code Playgroud)

但是,解析这不会从selenium服务器的角度给出内部元素id,因此没有用处.

EDIT1:解释 它使它更清晰(感谢@alecxe):这里需要的是在selenium服务器中所有DOM元素(保留其DOM结构)的序列化表示,这个序列化表示可以发送到客户端(一个python selenium测试应用程序),可以自己搜索.

python selenium ghostdriver

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

"printf"和"print sprintf"之间的区别

以下两个简单的perl程序有不同的行为:

#file1
printf @ARGV;
Run Code Online (Sandbox Code Playgroud)

#file2
$tmp = sprintf @ARGV;
print $tmp;
Run Code Online (Sandbox Code Playgroud)

$> perl file1  "hi %04d %.2f" 5  7.12345
   #output:  hi 0005 7.12
Run Code Online (Sandbox Code Playgroud)

$> perl file2 "hi %04d %.2f" 5  7.12345
   #output:  3
Run Code Online (Sandbox Code Playgroud)

为什么有区别?我原以为这两个程序是等价的.不知道是否有办法让file2(使用"sprintf")表现得像file1.

perl printf

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

如何编写C函数并能够从perl调用它

我已经编程了一段时间了.现在我需要编写一个perl可以调用的C程序.它应该具有与以下伪perl函数相同的语法:取两个输入,两个都是字符串(可能包含二进制字符,甚至是"\ x00"),输出一个新字符串.

当然,函数的算法会更复杂,这就是我需要在C中完成的原因.

sub dummy {
    my ($a, $b) = @_;
    return $a . $b;
}
Run Code Online (Sandbox Code Playgroud)

我简要地看了一下SWIG的实现,但是输入/输出不是一个整数并不容易,希望有人可以给出一个具体的例子.

提前致谢.

更新:从Rob(Cpan中的Inline :: C模块的作者)中得到了一个很好的例子,谢谢!

##############################
use warnings;
use strict;
use Devel::Peek;

use Inline C => Config =>
BUILD_NOISY => 1,
;

use Inline C => <<'EOC';

SV * foo(SV * in) {
 SV * ret;

 STRLEN len;
 char *tmp = SvPV(in, len);
 ret = newSVpv(tmp, len);
 sv_catpvn(ret, tmp, len);
 return ret;

}

EOC

my $in = 'hello' . "\x00" . 'world';
my …
Run Code Online (Sandbox Code Playgroud)

perl

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

使用参数调用perl例程

我需要在我的C程序中调用perl例程.perl例程采用以下参数:$a, $b, $c,where $a$b是整数,$c是一个字符串(可能包含二进制字符).根据perlcall,这里是打电话的方式.

I32 call_sv(SV* sv, I32 flags);
I32 call_pv(char *subname, I32 flags);
I32 call_method(char *methname, I32 flags);
I32 call_argv(char *subname, I32 flags, char **argv);
Run Code Online (Sandbox Code Playgroud)

似乎我只能使用call_argv(...),但有两个问题

  • 如何将整数传递给perl例程
  • 如何将(二进制)字符串传递给perl?

希望有一个像这样的功能

I32 call_argv(char *subname, I32 flags, int numOfArgs, SV* a, SV* b, SV *c ...);
Run Code Online (Sandbox Code Playgroud)

c perl xs

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

一个简单的jstree示例,可以创建/重命名/删除节点

jstree和jquery的新手,正在寻找一个可以创建,重命名和删除节点的简单教程,但是即使有一些很好的教程(在我的环境中不工作或者没有满足需要)也找不到它.

看到一个有趣的例子http://www.jstree.com/demo/,但是由于其他示例和所有html格式的混合而变得复杂.花了一些时间并将其降低到最低水平.希望它可以帮助您的项目!

快照:
在此输入图像描述

http://jsfiddle.net/ba75Y/2/
要做ajax,你可以参考下面的代码片段,注意"url"字段.您的响应处理程序应返回类似的内容

["Child 1", { "id" : "demo_child_1", "text" : "Child 2", "children" : [ { "id" : "demo_child_2", "text" : "One more", "type" : "file" }] }]
Run Code Online (Sandbox Code Playgroud)

Ajax片段

$(function () {
    var to = false;
    $('#demo_q').keyup(function () {
        if(to) { clearTimeout(to); }
        to = setTimeout(function () {
            var v = $('#demo_q').val();
            $('#jstree_demo').jstree(true).search(v);
        }, 250);
    });
    $('#jstree_demo')
        .jstree({
            "core" : {
                "animation" : 0,
                "check_callback" : true,
                "themes" : { "stripes" : true },
                'data' …
Run Code Online (Sandbox Code Playgroud)

jquery jstree

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

Selenium Python绑定:如何在元素上执行JavaScript?

使用python selenium脚本触发selenium服务器运行JavaScript代码.它工作正常.

drv.execute_script('<some js code>')
Run Code Online (Sandbox Code Playgroud)

但是,我无法弄清楚如何在使用get_element_by _*()api检索的元素上运行javascript代码.例如,我

ele = get_element_by_xpath('//button[@id="xyzw"]');
#question: how do I change the "style" attribute of the button element?
Run Code Online (Sandbox Code Playgroud)

如果我在浏览器的开发者控制台上,我可以运行它

ele = $x('//button[@id="xyzw"]')[0]
ele.setAttribute("style", "color: yellow; border: 2px solid yellow;")
Run Code Online (Sandbox Code Playgroud)

只是不知道如何在python selenium脚本中做到这一点.提前致谢.

javascript python selenium selenium-webdriver

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

从内联C访问全局perl变量

我试图从内联C函数中访问perl全局变量(在这种情况下是$ data),但我没有定义我使用的"data"变量.知道怎么做吗?

谢谢

以下代码片段会给出错误,抱怨未声明变量"data".

$data = "this is a test";
test();

use Inline C => <<'END_OF_C_CODE';

void test() {
    printf("here: %s\n", SvPV(data, PL_na));
}

END_OF_C_CODE
Run Code Online (Sandbox Code Playgroud)

perl

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

标签 统计

perl ×5

c ×2

python ×2

selenium ×2

c++ ×1

gcc ×1

ghostdriver ×1

javascript ×1

jquery ×1

jstree ×1

mingw ×1

printf ×1

reactjs ×1

selenium-webdriver ×1

tcc ×1

xs ×1