小编Src*_*Src的帖子

REGEX:匹配和执行返回不同的结果

let regexp = /Rim.*?vert\\s(\\d*)cm/g\nlet content = "BEONE SPS SPIRIT, 2012y.b.,26 Rim - BEONE aluminium, vert 51cm \xc2\xabL\xc2\xbb,\xd0\x95\xd0\xa2\xd0\xa2600mm, 835 37 38"\n
Run Code Online (Sandbox Code Playgroud)\n\n

执行后content.match(regexp),我得到:

\n\n
["Rim - BEONE aluminium, vert 51cm"]\n
Run Code Online (Sandbox Code Playgroud)\n\n

因此,我预计它将返回匹配组 (51) 作为第二个数组元素。

\n\n

但是当我使用时regexp.exec(content),一切似乎都很好:

\n\n
["Rim - BEONE aluminium, vert 51cm", "51"]\n
Run Code Online (Sandbox Code Playgroud)\n\n

为什么会有这样的差异呢?

\n\n

我的代码有什么问题\\regexp所以它返回不同的结果?

\n

javascript regex

4
推荐指数
1
解决办法
1530
查看次数

引导程序中的 5 个等宽列(容器的全宽)

根据我的 psd 模板,我有一个由 5 个等宽 (344px) 列组成的 CONTAINER。我决定在响应能力方面使用引导程序。但现在我对这项任务感到沮丧。

有什么方法可以实现这个或者我需要:

  • 重建我的 psd 模板以适应引导网格和大小
  • 不要使用引导程序和编写自定义响应类

代码笔:http ://codepen.io/anon/pen/YZbBQG

<div class="cont">
        <div class="bicycles">
          <div class="bik"><img src="https://pp.userapi.com/c637925/v637925758/4d271/da6RN5KLBRU.jpg" alt=""></div>
          <div class="bik"><img src="https://pp.userapi.com/c637925/v637925758/4d271/da6RN5KLBRU.jpg" alt=""></div>
          <div class="bik"><img src="https://pp.userapi.com/c637925/v637925758/4d271/da6RN5KLBRU.jpg" alt=""></div>
          <div class="bik"><img src="https://pp.userapi.com/c637925/v637925758/4d271/da6RN5KLBRU.jpg" alt=""></div>
          <div class="bik"><img src="https://pp.userapi.com/c637925/v637925758/4d271/da6RN5KLBRU.jpg" alt=""></div>
        </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

css flexbox twitter-bootstrap twitter-bootstrap-4 bootstrap-4

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

Laravel 静态创建方法

我从 5.1 开始使用 laravel,我一直在使用Model::create方法来创建新的数据库记录。目前,我需要深入研究 Laravel API 以找出该方法的返回类型(因为我忘记了这一点,而且自从我上次使用 Laravel 框架以来,情况可能会发生变化)。

因此,当我尝试查找static create(..)方法时,我发现该方法的 api 文档自5.3version.

该方法缺少 api 文档的原因是什么?使用静态create方法仍然安全还是会被弃用?

此外,laravel docs 缺少有关嵌套控制器的信息,这些信息在laravel 5.25.3docs ...

php laravel

4
推荐指数
1
解决办法
5091
查看次数

使用条件分配时的丑陋破坏

ESLint在处理对象属性时强制使用对象分解,在某些情况下,这会导致多余的代码行。

根据ESLint的说法,您不能做类似的事情(这似乎是正确的方法):

const { value } = props;
const color = props.color || '#515cdc';
Run Code Online (Sandbox Code Playgroud)

相反,它迫使您这样做:

const { value } = props;
let { color } = props;
color = color || '#515cdc';   
Run Code Online (Sandbox Code Playgroud)

我是否缺少某些东西或还有其他方法可以做到?

javascript ecmascript-6

4
推荐指数
1
解决办法
31
查看次数

Javascript自动执行功能

如果我以这种方式编写事件,则应在以下情况下执行操作:

 document.getElementById('myElem').onmousedown = (e) => {
     console.log('fired!')
    }
Run Code Online (Sandbox Code Playgroud)

但是,如果我以其他方式编写相同的内容,则在加载页面时执行操作,一次:

let HandleEvent = (event) => {
 console.log('fired!')
}
document.getElementById('myElem').onmousedown = HandleEvent(event)
Run Code Online (Sandbox Code Playgroud)

UPD: 当然它只是一个例子,HandleEvent函数将具有更复杂的逻辑.

我的问题是:

  1. 为什么?
  2. 如何让它正常工作?

javascript

3
推荐指数
2
解决办法
134
查看次数

触发事件时,`this`属于window对象

$("body").on('click', 'ul#ajax-users-list>li', () => {
    console.log( $(this).data('id') );
});
Run Code Online (Sandbox Code Playgroud)

此代码返回undefined,因为$(this)= [Window].

如何访问元素的数据属性,触发点击事件?

javascript jquery dom

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

缓存过期不工作

我正在尝试像这样缓存数据:

def index
    Rails.cache.fetch("someCache", expires_in: 12.hours) do
      'someContent'
    end
    raise Rails.cache.fetch("someCache").inspect
end
Run Code Online (Sandbox Code Playgroud)

一切正常(它返回someContent),直到我删除设置该值的块(它已经设置了 12 小时,对吧?)并刷新页面:

def index
    raise Rails.cache.fetch("someCache").inspect
end
Run Code Online (Sandbox Code Playgroud)

回报nil

ruby caching ruby-on-rails

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

golang的指针

为什么这个:

obj := *g
return &obj, nil
Run Code Online (Sandbox Code Playgroud)

不等于这个:

return &(*g), nil
Run Code Online (Sandbox Code Playgroud)

它不应该以相同的方式工作(使用gstruct中的数据返回指向新内存区域的指针)?

go

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

Node.JS:execFile ENOENT

我尝试执行*.exe文件,但得到:

exec error: { Error: spawn ${__dirname}/install.exe ENOENT

代码:

var execFile = require('child_process').execFile
execFile('${__dirname}/install.exe', function(error, stderr) {
   console.log('stderr: ', __dirname);
   if (error !== null) {
       console.log('exec error: ', error);
   }
  });
Run Code Online (Sandbox Code Playgroud)

还尝试过:'${__dirname}\install.exe', './install.exe','D:\install.exe'

javascript child-process node.js

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

创建记录后创建关联

inventory创建用户后,我需要在表中创建4条记录.我知道我需要使用回调after_create,但我认为根据最佳实践和DRY原则,这样的4行是不好的:

def create_items
    Item.create({user_id: self.id, item_id: 1})
    Item.create({user_id: self.id, item_id: 2})
    ...
end
Run Code Online (Sandbox Code Playgroud)

或者甚至可能那样?

def create_items
    self.inventories.create([
        {item_id: 1},
        {item_id: 2}
    ])
end
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails

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