gpt4 book ai didi

javascript - 在对象存在之前创建方法链

转载 作者:行者123 更新时间:2023-11-30 09:18:31 25 4
gpt4 key购买 nike

假设我正在使用 knex对 SQL 数据库运行查询。我链接了几个方法来构建查询。

例如:

const sqlConfig = require('./sql.config');

var knex = require('knex')(sqlConfig);

knex.select("*")
.from("books")
.where("author", "=", "José Saramago")
.then((rows) => {
console.log(rows);
})
.catch((err) => {
console.log(err);
})
.finally(() => {
knex.destroy();
})

现在,我的问题是:

有没有办法在创建knex对象之前存储方法链,并在创建后调用它?

像这样:

const methodChain = <<<
.select("*"),
.from("books"),
.where("author", "=", "José Saramago")
>>>

const sqlConfig = require('./sql.config');

var knex = require('knex')(sqlConfig);

knex
.methodChain()
.then((rows) => {
console.log(rows);
})
.catch((err) => {
console.log(err);
})
.finally(function() {
knex.destroy();
})

最佳答案

您可以创建一个接受链中初始参数的函数:

function methodChain(in) {
return in.select("*")
.from("books")
.where("author", "=", "José Saramago");
}

methodChain(knex)
.then((rows) => {
console.log(rows);
})
.catch((err) => {
console.log(err);
})
.finally(function() {
knex.destroy();
})

关于javascript - 在对象存在之前创建方法链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53306953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com