Ruby China
  • Topics
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • Sign Up
  • Sign In
IchiNiNiIchi
@IchiNiNiIchi
VIP
NO. 1519 / 2012-03-20

4 Topics / 66 Replies
0 Followers
0 Following
0 Favorites
No GitHub.
  • Overview
  • Topics
  • Replies
  • Favorites
  • Following
  • Followers
  • 使用 Devise Token 认证,登录被拦截, at November 08, 2019

    用代码试一下是最快的,你把 before_action 从 ApplicationController 移到你实际想要控制的 Controller 看看就知道了。

  • 使用 Devise Token 认证,登录被拦截, at November 08, 2019

    authenticate_sys_user! 是 devise 提供的,但 before_action 是 Rails 的。因为 ApplicationController 基本上是所有 controller 的超类,所以 DeviseTokenAuth::SessionsController#create 受影响其实很正常。

  • 怎么理解`setState`是异步这回事? at November 07, 2019

    我觉得你有点钻太深了,要得到答案估计得研究实现的代码。当成黑盒就比较好理解,setState 是异步这一点需要我们去注意就只有当要根据当前组件 state 推导新的 state 的时候。

    class Counter extends React.Component {
      constructor(props) {
        super(props);
        this.state = {counter: 0};
      }
    
      componentDidUpdate() {
        console.log(this.state.counter)
      }
    
      handleClick = () => {
        this.setState((state, props) => ({
          counter: state.counter + 1
        }))
        this.setState((state, props) => ({
          counter: state.counter + 1
        }))
      }
    
      render() {
        return (
          <div>
            <button onClick={this.handleClick}>Click Me</button>
            <h2>{this.state.counter}</h2>
          </div>
        );
      }
    }
    
    // ========================================
    
    ReactDOM.render(
      <Counter />,
      document.getElementById('root')
    );
    

    另外 componentWillUpdate 文档不推荐使用了。上面这段代码实验了一下,handleClick 执行了两次 setState,不过 componentDidUpdate 只执行了一次。你提的那些问题要想深究,可以自己写代码测试一下。

  • 怎么理解`setState`是异步这回事? at November 07, 2019

    https://reactjs.org/docs/state-and-lifecycle.html#state-updates-may-be-asynchronous

    为什么说 setState 是异步的跟这对我们的影响可以看官网的文档。 我的理解是这样子,假如组件方法里有段代码是这样子

    // 假设 this.state.counter 原先的值为 0
    this.setState({
      counter: 1,
    });
    
    this.setState({
      // 文档说了为了性能多个 setState 调用可能合并成一个单独的状态更新
      // 那么这里 this.state.counter 的值是 0 还是 1 呢? 
      counter: this.state.counter + 1, 
    });
    
  • 如何往 yaml 文件写引号? at November 07, 2019

    最先想到的是你现在生成的文件再处理一下,用正则表达式替换

  • 为何 RailsGirl 的教练都不收费,活动还停了? at October 29, 2019

    感觉还是 web 退潮后 Rails 没有五六年前那么火了。要组织活动,不提场地之类的硬性要求,单是有足够多的参与者这点就够呛。日本 ruby 环境应该不算差,但看 ruby magazine 类似的活动大概也就一年一次。

  • 在力扣做的一道题,相当之诡异 at October 24, 2019
    # @param {Integer[]} nums
    # @return {Void} Do not return anything, modify nums in-place instead.
    def next_permutation(nums)
        result = nums.sort.dup # 这里符合题目要求的额外常数空间吗?
        (0..nums.length - 1).reverse_each do |i|
            if nums[i - 1] && nums[i] > nums[i - 1]
                ex_num = nums[i..-1].sort.find {|n| n > nums[i-1] }
                ex_index = nums.index.with_index {|n, j| j > i - 1 && n == ex_num} 
                nums[i-1], nums[ex_index] = nums[ex_index], nums[i-1]
                result = (nums[0..i-1] + nums[i..-1].sort).dup
                break
            end    
        end    
        result # 看注释,题目要求不返回值,只在 nums 上操作。为什么要返回 result 呢?
    end
    
  • ChangeSet 的思路 Rails 会借鉴么? at September 05, 2018

    "Above all, I hope we don't become missionaries. Don't feel as if you're Bible salesmen. The world has too many of those already. What you know about computing other people will learn. Don't feel as if the key to successful computing is only in your hands."

    "No Silver Bullet"

  • 推荐一本新书:Functional Web Development with Elixir, OTP, and Phoenix at August 29, 2018

    可惜 pragmatic 只支持信用卡付款。

  • Elixir 的一些想法 at August 26, 2018

    感觉还是 Elixir 既是小众语言,又没有什么杀手级应用的缘故。像 Web 开发,Rails 发展到现在都很成熟,没有什么理由非要用 Phoenix;至于做高负载系统,Go、C++ 感觉够用了,而且基于招人考虑,感觉会选 Elixir 的基本没有。 不过我还是很喜欢 Elixir,第一次接触函数式编程的缘故,Pattern Match 感觉很新鲜。这几天刚看完了官网的 Guide,接下来准备看完 Phoenix 的 guide。Elixir 作为兴趣还行,如果想靠它找工作怕是不容易。

  • 求有 Go 语言经验的朋友推荐入门书籍和教程 at June 02, 2018

    Go 程序设计语言 (英文版) 借楼主的帖求私信一个能稳定访问 https://golang.org 的方法,付费的也行。

  • 求推荐用 rails 做后端 api 开发的教程 at May 04, 2018

    刚好最近也在找相关的资料,搜到这个感觉还不错 https://scotch.io/tutorials/build-a-restful-json-api-with-rails-5-part-one

  • 寻人启事:2013年 的 RubyConf China 大会上有过一面之缘的成都朋友 at September 10, 2016

    感觉真要找的话直接联系他招聘帖子里留的 HR 可能找得到,就是不知道离职了没

  • Hash [*[p1,p2].transpose.flatten] 中的*是什么用法? at March 15, 2016

    不是很会描述,大概是将一个数组打散作为参数

    def test(a, b)
      puts a
      puts "====="
      puts b
    end
    my_arr = [1, 2]
    test(*my_arr)
    test(my_arr)
    
  • 2.3*100 逆天了 at June 18, 2015

    http://ruby-doc.org/stdlib-2.2.2/libdoc/bigdecimal/rdoc/BigDecimal.html

    require 'bigdecimal'
    print BigDecimal.new('2.3') ** BigDecimal.new('100')
    
  • [已解决] 你们真的会用 DigitalOcean5 美元的方案吗? at January 21, 2015

    #14 楼 @chairy11 个人感觉 The Linux Command Line 比鸟哥的私房菜好点

  • [已解决] libv8 安装提示说出错,但我明明已经安装上了 at October 29, 2014

    发一下 gem list --local | grep psych 的结果

  • [已解决] git push 还要另外设置? at April 27, 2014

    stackoverflow 有解释 http://stackoverflow.com/questions/19720711/git-push-warning-questions

  • ::File.expand_path ('../config/environment', __FILE__) 是什么意思? at January 04, 2014

    在前面加上::表示访问在 top level 定义的常量。 你可以试着运行一下下面的代码

    module Test
    
      class File
        def self.expand_path(foo, bar)
          "This is a test"
        end
      end
    
      puts File.expand_path('../config/environment',  __FILE__)
      puts ::File.expand_path('../config/environment',  __FILE__)
    end
    
  • Ruby Hacking Guide 的 Ruby 源代码里的 REAME.EXT.ja 用 macvim 打开乱码 at December 28, 2013

    谢谢。刚刚用 :e ++enc=euc-jp 转换就可以了

  • 分享一个抓取淘宝商品信息的 gem at December 12, 2013

    README 里面有个小错误。 “或者你可以通过 em installl 直接安装:” 应该是 gem install。

  • 请教个问题 at December 12, 2013

    #3 楼 @fatbigbright 这是出于安全的考虑。具体可以看这里 http://stackoverflow.com/questions/11801200/what-is-mass-assignment-in-rails-3

  • 关于 rails.vim 和 janus 的小疑问? at December 02, 2013

    #2 楼 @kvoid Redit 跟 Rfind 已经过时了。 你如果已经装了 janus,试着用 :h rails 先看一下 rails.vim 的帮助吧。 :Redit {file} Obsolete alias for |:R| or |:A| :Rfind [{file}] Obsolete alias for |:find|

  • 关于 rails.vim 和 janus 的小疑问? at December 01, 2013

    已经集成了,放心用就是。

  • 不学英语就是在混 at October 15, 2013

    #3 楼 @chairy11 如果懂日语的话可以去看 るびま,有一些东西挺有趣的。 像是任天堂东京网络系统开发小组有 Ruby 版的 Code Puzzle。 Code Puzzle

  • 不学英语就是在混 at October 15, 2013

    既然学 Ruby 了,顺便把日语也学了吧。

  • 这是怎么回事? at June 16, 2013

    #11 楼 @blacktulip 不违反吧,像下面这样赋值的话 a.foo = b.bar = 1024

  • 学 Ruby 就像在买降价的股票? at June 07, 2013

    凡是只使用类比就想要说服别人的都是耍流氓

  • [Beta 期间限时优惠] Rails 101 v.2 - Rails 4.0 - @xdite at May 30, 2013

    #16 楼 @lgn21st 貌似只支持 VISA 跟 MASTER CARD, 不支持运通

  • 1
  • 2
  • 3
  • Next
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English