小编and*_*ndy的帖子

带参数的触发事件

这很烦人.我想在javascript中触发一个事件.我需要像往常一样将事件对象传递给参数和一个额外的自定义参数.

在jQuery中,这将非常简单:

$('#element').trigger('myevent', 'my_custom_parameter');
Run Code Online (Sandbox Code Playgroud)

但是我不想用它.我发现的与此相关的其他问题只是建议"使用jQuery!" 这是我正在开发的插件,并且要求jQuery用于一种方法非常愚蠢.任何人都可以指出一种方法来实现上述在跨浏览器兼容的vanilla JS中吗?

javascript custom-events

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

将旧密码移动到新的哈希算法?

我正在将一个站点切换到rails.这是一个拥有5万多用户的大型网站.问题是,现有的密码哈希方法非常薄弱.我有两个选择:

1)切换到新算法,为每个人生成随机密码,然后通过电子邮件将这些密码发送给他们,并在之后立即要求更改

2)实现新算法但使用之前的旧算法然后散列结果.例如:

密码:abcdef =算法1 => xj31ndn =算法2 => $ 21aafadsada214

任何新的密码都需要通过原始算法(md5)然后如果有任何意义那么得到散列的结果?这有什么不利吗?

security passwords

13
推荐指数
3
解决办法
3315
查看次数

Belongs_to主键?

我有这样的数据库布局:

Users
--------------
id, name, etc...

Lead
--------------
id, initials, etc..
Run Code Online (Sandbox Code Playgroud)

基本上用户有很多线索.该initials字段映射到nameusers表中的字段.我有一个完美的用户设置关系:

has_many :leads, :foreign_key => 'initials', 
                 :primary_key => 'name'
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何使用其他方式belongs_to:

belongs_to :user, :foreign_key => 'name', 
                  :primary_key => 'initials'
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用.

有任何想法吗?

ruby-on-rails

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

git post-receive工作不正常

我有以下问题.我已将'post-receive'更新为cd到某个目录,然后将repo拉进去进行部署,如下所示:

#!/bin/bash
cd /var/www/site
git pull origin master
Run Code Online (Sandbox Code Playgroud)

但是每当我在本地机器上执行'git push origin master'时,我会得到以下结果:

Counting objects: 5, done.
Delta compression using up to 2  threads.
(etc..)
remote: fatal: Not a git repository: '.'
Run Code Online (Sandbox Code Playgroud)

然而,当我手动cd到/var/www/site并做git pull origin master它出色的工作.

git git-post-receive

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

Ember.JS中的动态计算属性已弃用?

我正在尝试制作一个余烬应用程序.我有一个计算属性,控制器看起来像这样:

// The Controller

Todos.Controller = Ember.Controller.create({

    // ** SNIP ** //

    countCompleted: function()
    {
        return this.get('todos').filterProperty('completed', true).length
    }.property(),
});

// The View

{{Todos.Controller.countCompleted.property}} Items Left
Run Code Online (Sandbox Code Playgroud)

现在我正在使用的教程是使用旧版本的Ember.JS.我修复了每个错误,但是这个:

Uncaught Error: assertion failed: Ember.Object.create no longer supports defining computed properties.

有什么替代方法可以做到这一点?

ember.js

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

获取实例化类ruby的文件目录

我有一个内部有这样代码的宝石:

def read(file)
    @file = File.new file, "r"
end
Run Code Online (Sandbox Code Playgroud)

现在的问题是,你有一个像这样的目录结构:

app/main.rb
app/templates/example.txt
Run Code Online (Sandbox Code Playgroud)

main.rb具有以下代码:

require 'mygem'

example = MyGem.read('templates/example.txt')
Run Code Online (Sandbox Code Playgroud)

它提出来了File Not Found: templates/example.txt.它可以工作,如果example.txt它在同一目录中,main.rb但不是如果它在一个目录中.为了解决这个问题,我添加了一个名为relative_toin 的可选参数read().这需要一个绝对路径,所以上面可能需要:

require 'mygem'

example = MyGem.read('templates/example.txt', File.dirname(__FILE__))
Run Code Online (Sandbox Code Playgroud)

这很好,但我觉得它有点难看.反正有没有这样做,所以类知道read()调用什么文件并根据它来计算路径?

ruby file-io

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

将DOM元素作为React中的prop传递

所以我有一个组件需要一个作为prop传入的DOM元素.我试图在另一个组件中使用它,如下所示:

    <div>
        <div className="myPropDiv" ref="myPropDiv">...</div>
        <CustomComponent view={ this.refs.myPropDiv } />
    </div>
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为(我怀疑)DOM还没有在我正在调用的点上呈现this.refs.myPropDiv.我将如何完成这样的事情?

javascript dom reactjs

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

MySQL中的列='x,y,z'

这是我的情况:我需要选择user_id = x OR y OR z的所有消息.

我在PHP中有一个数组:

users = ('1', '2', '3')
Run Code Online (Sandbox Code Playgroud)

无论如何选择所有消息user_id =其中一个值而没有大量查询:

user_id = '1' OR user_id = '2' OR user_id = '3?'
Run Code Online (Sandbox Code Playgroud)

(我需要接收100多人的消息,因此效率低下)

谢谢

php mysql

6
推荐指数
3
解决办法
6421
查看次数

Window.opener在IE8中未定义?

我无法弄清楚我在哪里出错.在其他浏览器中,它工作正常:

function main__pageeditor_new_body_SetUrl()
    {
        function getUrlParam(parentObject, paramName)
        {
          var reParam = new RegExp('(?:[\?&]|&amp;)' + paramName + '=([^&]+)', 'i') ;            
          var match = parentObject.location.search.match(reParam) ;

           return (match && match.length > 1) ? match[1] : '' ;
        }

        var funcNum = getUrlParam(this, 'CKEditorFuncNum');

        this.opener.CKEDITOR.tools.callFunction(funcNum, arguments[0]);
}
Run Code Online (Sandbox Code Playgroud)

但在IE中你得到这个错误:

'this.opener.CKEDITOR' is null or not an object

为什么这不起作用?

javascript internet-explorer-8 ckeditor

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

把手传递给帮手的把手

目前我有一个Ember对象,如下所示:

name: 'Bob'
xs: {
    'actual':50
    'target':55
}
Run Code Online (Sandbox Code Playgroud)

我有大约5-6个类似的字段xs.我需要一个辅助方法,可以获取该xs对象,然后返回目标是否已被命中.

我想过这样做:

Handlebars.registerHelper('hasHitTarget', function(attribute) {
    if (attribute.actual >= attribute.target)
    {
        return block(this);
    }
});

{{#each user in App.userController}}
    {{#hasHitTarget user.xs}}
        Target Hit
    {{/hasHitTarget}}
{{/each}}
Run Code Online (Sandbox Code Playgroud)

我在网上看到的一切都说这应该有效.但事实并非如此.当console.log(attribute)user.xs以字符串形式返回时.这是怎么回事?

handlebars.js ember.js

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