标签: callback

Rails after_save错误

这是使用after_save回调的正确方法吗?

class CouponsController < ApplicationController
after_save :remove_restrictions
 private
    def remove_restrictions

      logger.debug("in after save")
    end

end
Run Code Online (Sandbox Code Playgroud)

此代码将错误抛出为

undefined method `after_save' for CouponsController:Class
Run Code Online (Sandbox Code Playgroud)

使用after_save的正确方法是什么?

callback after-save ruby-on-rails-3

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

你能解释一下这个Javascript回调函数吗?

如果我有以下回调函数:

a(function  () {
  b() 
})
Run Code Online (Sandbox Code Playgroud)

我的理解是,首先执行a,然后执行b

但通常在编程中,您将参数传递给parantheses中的函数吗?所以在这个函数中,好像你正在传递

function  () {
  b() 
}
Run Code Online (Sandbox Code Playgroud)

函数a作为参数.那么根据我对编程的了解,a应该以所有这些作为参数执行吗?

然而根据我对回调的了解,它意味着所有这些都在函数执行后执行.你能看到矛盾吗?那么,如果没有参数,函数a不会被执行吗?

参数在javascript中的工作方式不同.默认情况下,括号中的所有内容是否都在函数本身后执行?

javascript asynchronous callback

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

forEach,async和callbacks

对不起,如果这个问题之前得到了回答,但我找不到.

我有一个对象数组,对于每个对象,我想做一个异步调用(ajax调用),当所有异步调用完成后,我想调用另一个函数.

例如.

    var list = [Object, Object, Object, Object];
    var final= [];

    $(list).each(function(){
       //ajax call
       getSomething(data, function(data){
          final.push(data);
       });
    });
Run Code Online (Sandbox Code Playgroud)

在完成所有ajax调用后,我想调用函数 load(final);

这可以用回调来完成,没有像when.js等库.

钍.

javascript ajax callback

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

将回调值累积到列表中的函数方法是什么?

我正在使用一个C函数,我将一个(回调)函数传递给它,并且每次使用不同的参数调用它.

我将它导入Haskell,现在我有类似的东西(我当然简化了它):

countToFive :: (Int -> IO ()) -> IO ()
countToFive fn = do fn 1; fn 2; fn 3; fn 4; fn 5
Run Code Online (Sandbox Code Playgroud)

我想列出传递给的每个号码fn; 有这个签名的东西:

counting :: IO [Int]
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,将(当然执行IO)的结果[1,2,3,4,5].

命令式方法counting是创建一个可变列表,并countToFive使用一个函数调用,该函数在每次调用时将参数插入到可变列表中,然后返回列表.

什么是功能性的方法呢?

haskell functional-programming callback immutability

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

如何在向NaCl(Chrome Native Client)发送消息后实施回调?

来自NaCl新手的简单问题......

在我的javascript中,我向NaCl模块发布了一条消息.
在NaCl模块处理此消息后,如何在javascript中执行回调?

入门教程中,给出了以下示例.

 function moduleDidLoad() {
      HelloTutorialModule = document.getElementById('hello_tutorial');
      updateStatus('SUCCESS');
      // Send a message to the Native Client module
      HelloTutorialModule.postMessage('hello');
    }
Run Code Online (Sandbox Code Playgroud)

如何在HelloTutorialModule.postMessage('hello')中执行回调函数; ?

谢谢.

javascript callback google-nativeclient ppapi

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

Parse.com中的参数query.find成功回调

我在这里先向您的帮助表示感谢.我正在使用Phonegap和Javascript进行练习分配.长话短说:我需要使用Parse.com来存储一些乐高人仔的信息.我现在遇到的问题主要是由于我对Javascript的经验不足.

我正在努力让用户为数字添加标签.用户输入它们,用逗号分隔,然后我拆分字符串.那工作正常.

现在,我需要将尚不存在的标记添加到我的数据库中.为此,我搜索具有该描述的任何标签(使用query.find)然后,如果它存在,我不创建它,我只是修改关系.如果它不存在,我创建它然后修改关系.

我的问题是:我似乎无法从query.find的成功回调中访问标记描述(字符串).我很确定这是因为范围.除了结果数组之外,还有任何正确的方法可以使用成功回调来访问变量吗?

我目前的代码如下:

                var Figure = Parse.Object.extend("Figure");
                var Tag = Parse.Object.extend("Tag");
                var nombre = $('#nombre').val();
                var serie = $('#serie').val();
                var figure = new Figure({"Name":nombre,"Series":serie});
                var tags = $('#tags').val();
                res = tags.split(","); //split the 
                figure.save().then(function() {
                    for (var i = 0; i < res.length; i++) { //for each tag

                        var query = new Parse.Query(Tag); //create the query.
                        query.equalTo("Description", res[i]);
                        query.find( {//execute query                                
                            success: function(results, res[i]) {
                             if (results.length > 0){ //if there are results.
                                var tag = results[0]; //get …
Run Code Online (Sandbox Code Playgroud)

javascript callback cordova parse-platform

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

为bootstrap模式编写回调函数

我有一个bootstrap模态确认,我想显示当前选中的html选择列表的值以及传入变量的值.

我问了这个问题并在这里得到了一个很好的答案,关于在同一个html选择列表中显示两个值,用于JavaScript确认弹出窗口.但是,我现在需要用bootstrap模式替换JavaScript确认.

这是html选择列表:

<select name="language_code" id="id_language_code">
    <option value="ar">Arabic - ???????</option>
    <option value="bg">Bulgarian - ?????????</option>
    <option value="zh-CN">Chinese (Simplified) - ?? (??)?</option>
    <option value="en" selected="selected">English (US)</option>
    <option value="fr-CA">French (Canada) - français (Canada)?</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我可以使用以下代码在引导模式上显示两个语言值:

$( "#submit_buttonA" ).attr('update-confirm', 'Are you sure you want to change the language of the website from ' + $('#id_language_code option[value=' + '{{ user.get_profile.language_preference }}' +  ']').text() + ' to ' + $('#id_language_code option:selected').text() + '?');
Run Code Online (Sandbox Code Playgroud)

上面的代码行总是在bootstrap模式上返回第二语言值$('#id_language_code选项:selected').text()(标记为selected ="selected")为英语(US),即使用户有选定保加利亚语 - Български.

我已经阅读了这篇文章并认为这需要一个JavaScript回调函数,因为引导模式是异步的,而JavaScript …

javascript jquery html-select callback twitter-bootstrap

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

始终在foreach循环中使用相同的值调用事件处理程序

我想将一组回调函数绑定到C#中的GUI元素,每个函数使用不同的参数调用相同的处理函数.

拼写出来的方式

# Assign element #1 to widget

widget.Click += () => {ProcessClick(1) ;} ;

# Assign element #2 to widget

widget.Click += () => {ProcessClick(2) ;} ;

...
Run Code Online (Sandbox Code Playgroud)

似乎多余.然而,一个天真的循环

Widget widget ;

foreach (int i in new List<int>() {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} )
{
    # Assign element i to widget

    widget.Click += () => {ProcessClick(i) ;} ;
}
Run Code Online (Sandbox Code Playgroud)

将无法工作,因为一旦调用任何回调,循环将过期,从而导致ProcessClick(9)每个小部件的调用.

我觉得应该有一个简单的解决方案,但我被卡住了.

如何将回调函数绑定到GUI元素,每个GUI元素调用具有不同参数的函数而不将它们全部拼写出来?

c# lambda user-interface callback

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

Rails 4:before_save回调无法正常工作

我有一个lookups带有子ContractType模型的多态表.我before_saveContractType模型中有一个回调设置category,但它似乎没有工作.

class Lookup < ActiveRecord::Base
  validates :value, presence: true
  validates :category, presence: true
end

class ContractType < Lookup
  before_save { self.category = "contract_type" }
end
Run Code Online (Sandbox Code Playgroud)

然后我打开rails c:

> c = ContractType.create(value: "test")
> c.errors.messages
=> { :category => ["can't be blank"] }
Run Code Online (Sandbox Code Playgroud)

我没有得到任何错误,只是验证失败.据我所知,语法看起来是正确的,只是before_save回调似乎不起作用......

我错过了一些明显的东西吗?

polymorphism activerecord callback ruby-on-rails-4

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

使用成员函数作为回调

我想使用成员函数作为回调(使用此函数):

glfwSetCursorPosCallback(window, (GLFWcursorposfun)(MyClass::mouseButtonChanged));
Run Code Online (Sandbox Code Playgroud)

我知道这是不可能的,因为我需要一个MyClass调用该方法的实例mouseButtonChanged.

但是我能做什么?

c++ callback static-members

0
推荐指数
2
解决办法
731
查看次数