小编Eng*_*mon的帖子

运算符'+'不能应用于TypeScript中的类型'String'和'String'

我是TypeScript的新手,试图玩它.但我面临着一个有线问题.当我尝试String使用+运算符连接两个类型时,它会给出一个错误

运算符'+'不能应用于类型'String'和'String'

我的代码快照是

var firstName: String = 'Foo';
var lastName: String = 'Bar';
var name = firstName + lastName;
Run Code Online (Sandbox Code Playgroud)

如果我使用string替代 String或添加额外的''工作正常.我检查过,在JavaScript中我们可以使用+两个String对象然后它为什么在TypeScript中显示错误?是bug还是功能?我肯定错过了什么.细节解释赞赏.

javascript typescript

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

使用和不使用self的类方法调用Ruby类方法之间有什么区别吗?

我有点好奇要知道,以下两种方法之间有什么区别吗?

  1. 使用self在类方法中调用类方法

    class Test
      def self.foo
       puts 'Welcome to ruby'
      end
    
     def self.bar
      self.foo
     end
    
    end
    
    Run Code Online (Sandbox Code Playgroud)

    Test.bar #欢迎来到红宝石

  2. 在没有self的类方法中调用类方法

    class Test
      def self.foo
       puts 'Welcome to ruby'
      end
    
     def self.bar
      foo
     end
    
    end
    
    Run Code Online (Sandbox Code Playgroud)

    Test.bar #欢迎来到红宝石

ruby

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

在rails测试上设置自定义用户代理

我正在使用turbolinks-ios和Rails变体开发iOS应用程序.

在我的iOS应用程序,我设置自定义用户代理iPadApp和检测on Rails的application controller使用request.user_agent.try(:index, 'iPadApp')设置varianttablet(因为观点一样foo.html+tablet.haml).

我的应用程序工作正常,现在我正在尝试为我的应用程序编写功能测试,但无法正确设置用户代理.我试过这篇帖子实际上是stackoverflow但是我发现它没有设置request.user_agent而是用(page.driver.browser.header(key, value))设置查询参数request.params.

在我的控制器测试中,我只是request.user_agent = 'iPadApp'用来设置工作正常的用户代理.

如何配置测试请求以便我可以使用request.user_agent.try(:index, 'iPadApp')

谢谢你的帮助.

ruby-on-rails capybara turbolinks rspec3 turbolinks-ios

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

Ruby 中方法和 public_methods 之间的区别

我只是想知道Rubymethods和之间到底有什么区别public_methods?来自RubyMonk 分析部分

对象上的methods方法允许我们访问对象及其祖先上可用的公共方法列表。这相当于使用 public_methods。它们返回属于该对象的所有实例方法和类方法以及该对象的祖先上可访问的方法。如果您想忽略祖先并将列表限制为仅接收者,您可以将 false 传递给 public_methods(false)。

出于好奇,我也打电话methods(false) 返回不同的输出 public_methods(false)

我的示例代码和输出:

p String.methods.size
p String.public_methods.size
p String.methods(false).size
p String.public_methods(false).size
p String.public_methods(false) - String.methods(false)
Run Code Online (Sandbox Code Playgroud)

标准输出:

235
235
3
19
[:json_create, :yaml_tag, :const_missing, :allocate, :new, :superclass, :cattr_reader, :cattr_writer, :cattr_accessor, :class_attribute, :superclass_delegating_accessor, :descendants, :subclasses, :duplicable?, :json_creatable?, :to_yaml] 
Run Code Online (Sandbox Code Playgroud)

从上面的输出我只是看到methodspublic_methods不一样,但无法找出它们之间的确切区别。

ruby

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

邪恶的pdf没有渲染页眉/页脚

我正在使用wicked_pdfpdfhtml我的rails项目生成.它正在渲染,template但我无法打印header/footer部分.下面是我的代码,只打印template部分

render pdf: "pdf_name",
               layout: 'application',
               template: 'reports/show',
               formats: [:html],
               margin: { top: 10, bottom: 10, left: 10, right: 10 },
               disable_javascript: true,
               show_as_html: params[:debug],
               header: {
                 html: { template: 'shared/header' },
                 spacing: 10
               },
               footer: {
                 html: { template: 'shared/footer' },
                 spacing: 30,
                 line: true
               }
Run Code Online (Sandbox Code Playgroud)

如果我尝试使用WickedPdf.new.pdf_from_string render_to_string它显示Failed to load PDF document错误甚至简单WickedPdf.new.pdf_from_string('<html><body><h1>Hello There!</h1></body></html>')不起作用.

我试过用render_to_string_with_wicked_pdf, render_with_wicked_pdf但没有成功.我的Rails版本是3.2.19,wicked_pdf宝石版本1.1.0 …

html pdf-generation wkhtmltopdf ruby-on-rails-3 wicked-pdf

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