小编Zac*_*chB的帖子

删除非空的目录

在我的Node应用程序中,我需要删除一个包含一些文件的目录,但fs.rmdir只适用于空目录.我怎样才能做到这一点?

filesystems node.js

250
推荐指数
17
解决办法
21万
查看次数

如何删除postgres中的枚举类型值?

如何删除我在postgresql中创建的枚举类型值?

create type admin_level1 as enum('classifier', 'moderator', 'god');
Run Code Online (Sandbox Code Playgroud)

我想moderator从列表中删除.

我似乎无法在文档上找到任何内容.

我正在使用Postgresql 9.3.4.

postgresql enums

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

componentDidMount调用BEFORE引用回调

问题

我正在ref使用内联函数定义设置反应

render = () => {
    return (
        <div className="drawer" ref={drawer => this.drawerRef = drawer}>
Run Code Online (Sandbox Code Playgroud)

那么在componentDidMountDOM引用中没有设置

componentDidMount = () => {
    // this.drawerRef is not defined
Run Code Online (Sandbox Code Playgroud)

我的理解是ref应该在mount期间运行回调,但是在ref回调函数之前调用添加console.log语句.componentDidMount

我看过的其他代码示例,例如github上的这个讨论表明了相同的假设,componentDidMount应该在定义的任何回调之后ref调用render,甚至在对话中说明

因此,在执行了所有的ref回调后,componentDidMount被触发了?

是.

我正在使用反应15.4.1

我试过的其他东西

为了验证ref函数被调用,我尝试在类上定义它

setDrawerRef = (drawer) => {
  this.drawerRef = drawer;
}
Run Code Online (Sandbox Code Playgroud)

然后在 render

<div className="drawer" ref={this.setDrawerRef}>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,控制台日志记录显示回调确实在调用之后 componentDidMount

javascript reactjs

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

阻止Visual Studio尝试加载特定DLL的符号

我将Visual Studio 2005设置为使用Microsoft的符号服务器.我还安装了UltraMon,它为每个进程注入一个钩子DLL.每当我开始调试我的MFC应用程序时,Visual Studio会说:

"Loading symbols for C:\Program Files\UltraMon\RTSUltraMonHookX32.dll..."
Run Code Online (Sandbox Code Playgroud)

从眨眼间到几十秒钟.它永远不会找到那些符号......我可以告诉它不要去寻找它吗?

(我尝试创建一个空RTSUltraMonHookX32.pdb文件,但Visual Studio发现它不好并继续查找.)

debugging debug-symbols visual-studio

61
推荐指数
4
解决办法
6万
查看次数

新类型可能没有定义返回类型 - C++

我对C++类结构感到困惑.

我有一个名为FxMathFunctions.h的.h和一个名为FxMathFunctions.cpp的.cpp

.h开头像:

class  FxMathFunctions
{
    public:
        FxMathFunctions();
        ~FxMathFunctions();
Run Code Online (Sandbox Code Playgroud)

并在.cpp

我有:

#include "FxBasicTypes.h"
#include "FxMathFunctions.h"

FxMathFunctions::FxMathFunctions() {}

FxMathFunctions::~FxMathFunctions() {}
Run Code Online (Sandbox Code Playgroud)

我收到的错误如下:

error: new types may not be defined in a return type
error: return type specification for constructor invalid
Run Code Online (Sandbox Code Playgroud)

这必须与某个地方的定义有关,但我不知道这可能发生在哪里.

c++ class-design compilation

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

如何访问与D3 SVG对象相关的DOM元素?

我试图通过试验他们的一个基本气泡图来学习D3 .第一项任务:弄清楚如何拖动气泡并让它在被拖动时成为最顶层的物体.(问题是让D3的对象模型映射到DOM上,但我会到达那里......)

要拖动它,我们可以使用它们提供的代码简单地调用d3的拖动行为:

var drag = d3.behavior.drag()
    .on("dragstart", dragstart)
    .on("drag", dragmove)
    .on("dragend", dragend);
Run Code Online (Sandbox Code Playgroud)

效果很好.拖得好.现在,我们如何让它成为最顶级的项目?在这里搜索"svg z-index",很快就会发现改变索引的唯一方法是在DOM中进一步向下移动一个对象.好.它们并不容易,因为单个气泡没有ID,但是在控制台上乱搞,我们可以找到其中一个气泡对象:

$("text:contains('TimeScale')").parent()
Run Code Online (Sandbox Code Playgroud)

我们可以将它移动到包含svg元素的末尾:

.appendTo('svg')
Run Code Online (Sandbox Code Playgroud)

执行此操作后拖动它,它是最顶层的项目.到目前为止,如果你完全在DOM中工作那么好.

但是:我真正想做的是在拖动给定对象/气泡时自动发生这种情况.D3提供了一个模型dragstart()dragend()函数,它们允许我们在拖动过程中嵌入一个语句来完成我们想要的操作.D3提供的d3.select(this)语法允许我们访问您当前正在拖动的对象/气泡的d3对象表示.但是我如何干净地将那个大型数组转换为对我可以与之交互的DOM元素的引用 - 例如 - 将其移动到svg容器的末尾,或者在DOM中执行其他引用,例如表单提交?

svg dom visualization data-visualization d3.js

55
推荐指数
3
解决办法
6万
查看次数

vi编辑器,复制块(不是通常的动作)

在vi编辑器中,我需要复制一个块.有很多方法,但有一种方法很快.

  1. 以某种方式标记第一行,

  2. 然后通过某种方式标记终点线,

  3. 然后放一些命令来复制标记的行.

  4. 然后复制,可能使用'p',但不确定.

有人知道命令(不是yy或10yy)吗?提前致谢.

vi vim copy-paste

52
推荐指数
6
解决办法
18万
查看次数

缩放和镜像SVG对象

我如何最容易地首先缩放一个对象,比如当前大小的2倍,然后垂直和水平翻转,或两者兼而有之?

到目前为止,我可以将"scale(2,2)"设置为它的宽度和高度的2倍,但是我不能将其翻转为与垂直翻转的比例(-1,1)相同.

我正在以编程方式创建SVG对象,作为要导出的格式.

svg matrix scale flip

47
推荐指数
3
解决办法
6万
查看次数

GulpUglifyError:无法缩小JavaScript

我正在尝试缩小我的脚本文件,我正在使用gulp任务运行器而我正在尝试gulp-uglify插件

码:

 gulp.task('concat', function() {
    return gulp.src('app/**/*.js')
        // .pipe(concat('script.js'))
        .pipe(uglify())
        .pipe(gulp.dest('./dist/'))
});
Run Code Online (Sandbox Code Playgroud)

但我得到的错误是

在此输入图像描述

当我尝试运行gulp任务作为gulp concat任何帮助将不胜感激

javascript gulp gulp-uglify

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

如何在Node.js中正确使用D3?

我一直在尝试在Node.js中调用D3.我首先尝试使用脚本标记从D3的网站导入d3.v2.js,但随后阅读此主题:

我想从Cakefile运行d3

D3的作者建议应该'npm install d3'......我这样做了,我可以在节点控制台中成功调用它:

dpc@ananda:$ node
> var d3 = require("d3");
undefined
> d3.version;
'2.8.1' 
Run Code Online (Sandbox Code Playgroud)

但是,当尝试使用'node app.js'从app.js调用它时,我得到:

node.js:201
    throw e; // process.nextTick error, or 'error' event on first tick
          ^
TypeError: Cannot read property 'BSON' of undefined
at     /Users/dpc/Dropbox/sync/Business/MindfulSound/Development/nad.am/nadam/node_modules/mongoose/node_modules/mongodb/lib/mongodb/index.js:45:44
Run Code Online (Sandbox Code Playgroud)

我意识到在其他地方,D3的作者已明确指出应该需要画布:

https://github.com/mbostock/d3/blob/master/examples/node-canvas/us-counties.js

如:

var Canvas = require("canvas");
Run Code Online (Sandbox Code Playgroud)

但即便如此,(即使在app.js中的require语句中特别要求index.js而不是d3.v2.js),我也无法在Jade模板中使用以下内容:

- script('/javascripts/d3.v2.js')
h1 Dashboard
  section.css-table
    section.two-column
      section.cell
        hr.grey
        h2 Statistics
        #mainGraph
            script(type="text/javascript") 
              var Canvas = require("canvas");
              var w = 400,
                  h = 400,
                  r = Math.min(w, h) / 2,
                  data = d3.range(10).map(Math.random).sort(d3.descending), …
Run Code Online (Sandbox Code Playgroud)

node.js d3.js

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