<input class="form-control {{ $errors->has('email') ? 'has-error' : '' }}" name="email" placeholder="Email">
我有这段代码..我想知道是否可以使用它们的承诺。我不喜欢,我认为这两个if语句在测试错误时没有意义..
如果不可能......我无能为力吗?
答案 0 :(得分:0)
如果库有回调接口,除了更改它的来源之外,你可能无能为力。
但你可以制作使用延迟接口的包装函数,如下所示:
// let's create our wrapper module
// json2cvs.js
var Deferred = require("deferred"); // this is just for example;
var converter = require("converter");
module.exports = function(MAP) {
var dfd = Deferred();
converter.json2csv(MAP.fls, function (error, csv) {
if (error) {
dfd.reject(error);
}
file_system.writeFile(MAP.output.res, csv, function (error) {
if (error) {
dfd.reject(error);
}
// some actions
var message = "file saved";
// success
dfd.resolve(message);
});
});
return dfd.promise;
}
然后在另一个模块中,您只需要上面的模块:
var json2csv = require("json2csv");
// use
json2csv(input).done(function(result) {
console.log(result);
}).fail(function(error) {
console.log(error);
});
对于此示例,我使用了此延迟库https://www.npmjs.com/package/deferred
但你可以使用任何其他。