javascript - knex.js 中的 createTable(...).createTable(...) 和 createTable(...).then(...) 有什么区别?

标签 javascript knex.js

我正在使用 knex.js 连接到 MySQL 数据库。我想创建几个表。到目前为止,我已经看到了两种风格。其中之一链接了 createTable 的使用,如下所示,

    knex.schema.createTable('foo',function(table){...}).createTable('bar'...)

另一种风格使用then机制来完成同样的事情。

    knex.schema.createTable('foo',function(table){...}).then(function() {
        knex.schema.createTable.createTable('bar'...)

它们在语义上相似吗?我可以假设他们做同样的事情吗? 第一个子句完成后,他们都会执行第二个子句吗?

最佳答案

我认为评论应该足以作为答案,但是

then

在 Javascript 中返回一个异步执行的 Promise,而另一个方法是同步执行的,并且在执行该行之前,您的 JavaScript 不会到达下一行。

关于javascript - knex.js 中的 createTable(...).createTable(...) 和 createTable(...).then(...) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29856086/

相关文章:

javascript - 使用 sinon.js stub ES6 类

javascript - 将特定表单输入传递给 Jquery 函数

javascript - 如何使用 jquery 使用 select2 制作下拉树?

database - 在不丢失数据的情况下更新 Knex.js 表

javascript - Postgres 迁移错误 - 错误 : type already exists

php - 我们如何通过Javascript验证textarea中的行数

javascript - Jquery - 首次使用后初始化选择框

sql - 在连接表中的 SQL 中为每个 id 返回一个结果

node.js - 如何在 .select 语句中使用带有 knex 的 pgcrypto? (Postgres 数据库)

javascript - Knex 迁移导致 gulp 进程挂起