小编p11*_*00i的帖子

util.inherits - 如何在实例上调用super方法?

我正在使用util.inherits node.js中的方法,似乎无法获得所需的行为.

var util = require("util");

function A() {
  this.name = 'old';
}

A.prototype.log =  function(){
  console.log('my old name is: '+ this.name);
};

function B(){
  A.call(this);
  this.name = 'new';
}

util.inherits(B, A);

B.prototype.log = function(){
  B.super_.prototype.log();
  console.log('my new name is: ' + this.name);
}

var b = new B();
b.log();
Run Code Online (Sandbox Code Playgroud)

结果是:

my old name is: undefined 
my new name is: new
Run Code Online (Sandbox Code Playgroud)

不过我想要的是:

my old name is: new 
my new name is: new
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

inheritance node.js

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

如何过滤chrome devtools中的缓存请求?

背景

Chrome devtools"网络"标签可以选择根据URL的字符串匹配和一些预定义的内容类型过滤器(CSS/JS/...)过滤请求.如果设置过滤器,则网络选项卡的底栏包含仅与匹配过滤器相关的额外信息.

如果浏览器缓存提供(或不提供)请求,是否可以过滤请求?

用例

如果有人有替代方法来执行此操作:

我想测量我的HTML-UI的"真实"请求数/传输大小.网络选项卡的底部已正确包含已传输的大小,但请求计数也包含缓存的请求.

我可以使用wireshark/tcpdump但是,HTML-UI可以从其他域请求资源,也许我可以编写一个复杂的过滤器,但这似乎是一个正常的用例.

javascript caching google-chrome-devtools

16
推荐指数
3
解决办法
2101
查看次数

是否总是回调Ember.js.然后函数?

假设我得到了一个Ember obj.在与后端进行任何类型的同步时,可以使用promise链:

obj.save().then(function(res){
  // Success callback
}, function(res){
  // Fail callback
});
Run Code Online (Sandbox Code Playgroud)

是否有Ember.js承诺链的完成/总回调.then()

我已经尝试添加第三个参数功能,但它没有帮助.

javascript ember.js

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

我可以使用aws-sdk-ruby在AWS S3上使用事务文件删除/上传吗?

我发现ActiveRecord::Base.transaction在复杂的方法中非常有效.

我想知道是否可以在以下事务中从AWS S3上传/删除文件:

S3Object.transaction do
   # write into files
   # raise an exception
end
Run Code Online (Sandbox Code Playgroud)

引发异常后,应在S3上回滚每个操作.这对S3Object有可能吗?

ruby amazon-s3

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

如何删除返回已删除元素的数组元素

我有一个阵列arr.我想arr根据条件破坏性地删除元素,返回已删除的元素.

arr = [1,2,3]  
arr.some_method{|a| a > 1} #=> [2, 3]
arr #=> [1]
Run Code Online (Sandbox Code Playgroud)

我的第一次尝试是reject!:

arr = [1,2,3]  
arr.reject!{|a| a > 1}
Run Code Online (Sandbox Code Playgroud)

但是返回的块和arr值都是[1].

我可以写一个自定义函数,但我认为有一个明确的方法.那会是什么?

问题得到解答后更新:

partition对于实现哈希的这种行为,该方法也很有用.如何删除哈希的元素,返回已删除的元素和修改后的哈希?

hash = {:x => 1, :y => 2, :z => 3}
comp_hash, hash = hash.partition{|k,v| v > 1}.map{|a| Hash[a]}
comp_hash #=> {:y=>2, :z=>3}
hash #=> {:x=>1}
Run Code Online (Sandbox Code Playgroud)

ruby arrays

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

如何在 .ruby-version 中使用任何补丁级别的 Ruby - rbenv/rvm

无论rbenvRVM支持使用一个.ruby-version文件来指定一个项目文件夹内的一个Ruby的版本。我只想定义没有补丁级别的版本。

我尝试以下使用Ruby 1.9.3的任何PATCHLEVEL定义,但既不工作:1.9.31.9.3-p*

我知道rbenv-aliasesrvm alias但是没有它们是否有可能做到这一点?

给 Rails 用户的提示:

您可以添加到您的 Gemfile:

ruby '1.9.3'  
Run Code Online (Sandbox Code Playgroud)

如果您尝试使用不同版本运行您的应用程序,这将引发警告。

ruby ruby-on-rails rvm rbenv

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