node.js - 使用节点js连接sqlite数据库文件时出错
问题描述
我是 Node.Js 的新手,并编写了以下代码来连接到 SQLite db 文件。但不幸的是,出错了。请帮忙
节点 - 4.6.0:
const sqlite3 = require('sqlite3').verbose();
let db =new sqlite3.Database('./db/program', sqlite3.OPEN_READWRITE,(err)
if (err) { console.error(err.message); }
console.log('Connected to the database.');});
错误信息:
let db = new sqlite3.Database('./db/program', sqlite3.OPEN_READWRITE, (err) => {
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:139:18)
at node.js:974:3
解决方案
由于您使用的是 Node 4.6.0,它不支持开箱即用的 ES6 语法。您需要使用该strict
模式并编写代码。let
在 Node v6.0.0 之后开箱即支持。
所以,也许你可以升级 Node.JS 或者你可以添加,
"use strict";
在代码的第一行。它应该工作。
在此处检查 ES6 兼容性:https
://node.green/#ES2015-bindings-let
了解有关严格模式的更多信息:https ://www.w3schools.com/js/js_strict.asp
推荐阅读
- python - python - 如何使用boto3使用python仅将更改的文件从一个S3 Bucket复制到另一个S3 Bucket?
- c# - 如何使用 puppeteer-sharp touchStart 和 touchEnd 和 touch move
- office365 - 如何保护 Office 加载项/防止其他公司安装或使用它
- quantum-computing - 密度矩阵与完整性关系的区别
- javascript - 对 SharePoint 搜索 API 的请求中的 SourceId 是什么?
- html - 字体真棒字体
- python - 正负值用不同颜色的散点图
- laravel - Facade\Ignition\Exceptions\ViewException 试图获取非对象的属性“name_category”
- javascript - 按_id(MongoDB,Node,React)错误显示特定用户:模型“user”的路径“_id”处的值“undefined”转换为ObjectId失败
- swiftui - 如何将图像大小设置为 SwiftUI 中行宽的 1/3?