破坏声明/标识符“名称”中缺少初始化程序已被声明 [mysql] [nodejs]

Posted

技术标签:

【中文标题】破坏声明/标识符“名称”中缺少初始化程序已被声明 [mysql] [nodejs]【英文标题】:Missing initializer in destructing declaration / identifier 'name' has already been declared [mysql][nodejs] 【发布时间】:2021-12-17 02:56:15 【问题描述】:

当我尝试将键作为参数插入时,我在 nodemon 上收到此错误: SyntaxError: 标识符 'name' 已被声明

这是我在模型上的功能:

const create = async (name, about, site) => 
    const sql = 'INSERT INTO client (name, about, site) VALUES (?, ?, ?)', [name, about, site];
    const [result] = await connection.execute(sql);
    return result;
;

还有我的路线:

router.post('/', async (req, res) => 
  const  name, about, site  = req.body;
  const data = await create(name, about, site);
  res.status(200).json(data);
)

这是我的第一个crud。我该如何解决这个错误?

【问题讨论】:

【参考方案1】:

您不能同时将 SQL 字符串和参数数组分配给 一个 常量 sql。你的意思可能是

const create = async (name, about, site) => 
  const [result] = await connection.execute(
    'INSERT INTO client (name, about, site) VALUES (?, ?, ?)',
    [name, about, site]
  );
  return result;
;

【讨论】:

我回来评论说我发现了错误。正是这个。谢谢!

以上是关于破坏声明/标识符“名称”中缺少初始化程序已被声明 [mysql] [nodejs]的主要内容,如果未能解决你的问题,请参考以下文章

SyntaxError: const 声明中缺少初始化程序

排毒测试:SyntaxError:const 声明中缺少初始化程序

Go-常量

Go-常量

C++ 类实例标识符未声明

如何修复已使用 react 和 typescript 声明的错误标识符?