Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何翻译Promise.try in coffeeScript_Javascript_Coffeescript_Promise_Bluebird - Fatal编程技术网

Javascript 如何翻译Promise.try in coffeeScript

Javascript 如何翻译Promise.try in coffeeScript,javascript,coffeescript,promise,bluebird,Javascript,Coffeescript,Promise,Bluebird,您好,我正在寻找COFF脚本中的代码,该脚本使用javascript生成此代码 Promise = require('bluebird'); myfunction = function(body) { return Promise.try(function() { return console.log('OK'); }); }; 我试过这样的方法: Promise = require 'bluebird' myfunction: (body) -&g

您好,我正在寻找COFF脚本中的代码,该脚本使用javascript生成此代码

Promise = require('bluebird');

 myfunction = function(body) {
  return Promise.try(function() {
    return console.log('OK');
  });
};
我试过这样的方法:

   Promise      = require 'bluebird'

   myfunction: (body) ->
    return Promise.try ->
      return console.log('OK')
Promise["try"](function() {});
但结果是:

   Promise      = require 'bluebird'

   myfunction: (body) ->
    return Promise.try ->
      return console.log('OK')
Promise["try"](function() {});

有什么想法吗??提前感谢

我猜您的文件中的缩进有问题,因为上述内容是正确的,除了:

  • 您不需要
    return
    ,因为函数/块中的最后一条语句会自动返回
  • 对于变量赋值,仍然应该使用
    =
    ,而不是定义对象时用于赋值属性的
    。这在Coffeescript和Javascript中是一样的
  • 此代码:

    Promise = require 'bluebird'
    
    myfunction = (body) ->
      Promise.try ->
        console.log 'OK'
    
    很好地编译成:

    var Promise, myfunction;
    
    Promise = require('bluebird');
    
    myfunction = function(body) {
      return Promise["try"](function() {
        return console.log('OK');
      });
    };
    

    我猜您的文件中的缩进有问题,因为上面的内容是正确的,除了:

  • 您不需要
    return
    ,因为函数/块中的最后一条语句会自动返回
  • 对于变量赋值,仍然应该使用
    =
    ,而不是定义对象时用于赋值属性的
    。这在Coffeescript和Javascript中是一样的
  • 此代码:

    Promise = require 'bluebird'
    
    myfunction = (body) ->
      Promise.try ->
        console.log 'OK'
    
    很好地编译成:

    var Promise, myfunction;
    
    Promise = require('bluebird');
    
    myfunction = function(body) {
      return Promise["try"](function() {
        return console.log('OK');
      });
    };
    

    关于
    Promise.try->
    转换成
    Promise[“try”](函数…
    这是因为
    try
    在JS中是一个a。

    关于
    Promise.try->
    转换成
    Promise[“try”](函数…
    这是因为
    try
    在JS中是一个a。

    这只在ES3之前是必要的,只是咖啡脚本在这里很保守。你也可以使用
    Promise.trument
    作为别名。那么,有没有可能生成一个Promise.try???@GutiMac这没关系,它们是完全等效的。@GutiMac这没关系,为什么你需要Promise.try?因为我必须生成一个与JS代码完全相等的代码。但在这种情况下,如果这是不可能的,我可以使用尝试。谢谢这是必要的,直到ES3,不过,这只是咖啡脚本在这里是相当保守的。你也可以使用
    Promise.trument
    作为别名。那么,有没有可能生成一个Promise.try???@GutiMac这没关系,它们是完全等效的。@GutiMac这没关系,为什么你需要Promise.try?因为我必须生成一个与JS代码完全相等的代码。但在这种情况下,如果这是不可能的,我可以使用尝试。谢谢用
    =
    代替
    ,它是什么?不确定为什么会删除
    console.log
    。顺便说一句,您应该使用
    myfunction=Promise.method(body)->console.log('OK')
    ,而不是
    ,是吗?不确定为什么会删除
    console.log
    。顺便说一句,您应该使用
    myfunction=Promise.method(body)->console.log('OK')