小编use*_*822的帖子

有没有办法调试任务和微任务?

免责声明:任务和微任务对我来说仍然非常模糊.

我遇到了一些问题,我认为时机是罪魁祸首.

我正在维护一个使用很多的项目setTimeout(... , 0).

是否可以查看浏览器的事件循环并查看任务和微任务队列中的任务?

我可以尝试使用chrome的devtools时间轴或打一些debugger关键字,但这非常繁琐.

javascript

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

聚合物:何时使用异步?

async聚合物中方法的目的是什么?我应该什么时候使用它?

现在我正在使用它像hm-this-bug-is-kinda-strange-maybe-async-will-fix-it-yep-id-did-yey.它不会让我对我的代码有任何信心,因为当我async出现一些时间错误时,我正在撒上它.

polymer

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

PHP包括"../"vs"/../"

有什么区别

require("../classes/M8.php");
Run Code Online (Sandbox Code Playgroud)

require("/../classes/H8.php");
Run Code Online (Sandbox Code Playgroud)

如何包含路径会有所不同?

php

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

setTimeout和this.async不一样?

有时我的编码方式错误,我的聚合物1.0网络应用程序和东西停止正常工作.就像将数据设置为某个自定义元素,然后立即尝试从中读取一些数据(这取决于刚刚设置的数据)(因为我不知道更好).有时这不起作用.大部分时间this.async都会帮助我,但有时却不会.但是,setTimeout在这种情况下,我从来没有让我失望过.大部分时间在setTimeout没有提供等待时间的情况下打电话也会起作用.

很长一段时间我都认为这this.async(function(){...})是一样的setTimeout(function(){...}).因为有时内部代码this.async将无法看到自定义元素数据中的更改,而内部代码setTimeout则不会.

这两种方法是以不同的方式实现的吗?

polymer polymer-1.0

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

我在哪里放置我的非模型类?

我应该将非模型(它们不代表任何数据)且仅提供某些功能的简单类放在哪里?

例如:

class FileUploader

  def save_uploaded_file(filename, tempfile)
    path = Rails.root.join('public', 'uploads', filename)
    File.open(path, 'wb+') do |file|
      file.write(tempfile.read)
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

其作用只是简单地将文件复制到预定义的位置。

我必须把它放在下面吗models?或者 Rails 有其他更适合此类课程的位置吗?我之前尝试过放入lib,但是太痛苦了,因为 Rails 将这些文件缓存在里面lib目录中(编辑配置以不缓存文件,但它仍然缓存在目录中lib)。

因此,我将这些文件放入models但测试变得非常痛苦(我刚刚启动 Rails,也许我在测试中做错了什么),因为 rake 会吐出关于没有设置测试数据库的错误(我想测试类)与任何形式或形状的数据库无关 - 为什么我需要设置数据库?)。

ruby-on-rails

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

Rspec 3:无法检查类类型

注意:

class BaseValidator; end
class DefaultValidator < BaseValidator; end
Run Code Online (Sandbox Code Playgroud)

Rspec 3.1:

describe ValidatorFactory do
    context "creating DefaultValidator" do
        subject { ValidatorFactory.validator('default') }
        it {is_expected.to be_a(DefaultValidator)}
        it {is_expected.to be_kind_of(BaseValidator) }
    end
end
Run Code Online (Sandbox Code Playgroud)

打印我这个:

Failure/Error: it {is_expected.to be_a(DefaultValidator)}
   expected DefaultValidator to be a kind of DefaultValidator

Failure/Error: it {is_expected.to be_kind_of(BaseValidator) }
   expected DefaultValidator to be a kind of BaseValidator
Run Code Online (Sandbox Code Playgroud)

但是,这有效:

...
    it {is_expected.to be(DefaultValidator)}
    it {is_expected.to be < (BaseValidator) }
...
Run Code Online (Sandbox Code Playgroud)

ValidatorFactory.rb

class ValidatorFactory
    def self.validator(type)
    case type.downcase
    when 'default'
        DefaultValidator
    else …
Run Code Online (Sandbox Code Playgroud)

ruby rspec ruby-on-rails rspec-rails

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

php soapserver返回更好的可读关联数组

我正在使用PHP SOAPSERVER类.

作为响应,我发送关联的php数组:

function getItems()    
{    
   ...
   $items[] = Array("itemID" =>$itemID,"itemName"=>$itemName);
   return $items;
 }
Run Code Online (Sandbox Code Playgroud)

SOAP返回是这样的:

...
<Items>
<item type="Map">
    <item>
        <key type="string">
            itemID
        </key>
        <value type="string">
            17558
        </value>
    </item>
    <item>
        <key type="string">
            itemName
        </key>
        <value type="string">
            I-17558
        </value>
    </item>
</item>
</Items>
...
Run Code Online (Sandbox Code Playgroud)

这种回归很难分析人类(给定更大的数组).首选形式如下:

    ...
<Items>
    <item>
        <itemID>17558</itemID>
        <itemName>I-17558</itemName>
    </item>
    <item>
        <itemID>17559</itemID>
        <itemName>I-17559</itemName>
    </item>
</Items>
    ...
Run Code Online (Sandbox Code Playgroud)

这样的SOAP返回是否可行(不改变返回类型 - 数组)?怎么样?

我刚刚开始使用SOAP,大多数教程都展示了如何返回像string这样的简单类型.

php soap soapserver

0
推荐指数
1
解决办法
1102
查看次数