我正在尝试在此处使用WHATWG URL对象支持读取文件而我得到这个错误:未捕获的类型错误:URL不是构造函数下面是我代码:
var fs = require("fs"); const { URL } = require('url'); var dbPath = 'file://192.168.5.2/db/db.sqlite'; const fileUrl = new URL(dbPath);
wnrlj8wa1#
我遇到了同样的问题,然后我研究了url模块并找到了解决方案
对于节点V6,使用:
const URL = require('url').Url;
或
const { Url } = require('url');
如果查看该模块,它会导出5个方法,其中一个是Url,因此如果需要访问Url,可以使用这两个方法中的任意一个
h79rfbju2#
您是否使用节点6而不是节点8?
const url = require('url'); const myUrl = url.parse('http://example.com'); const myUrlString = url.format(myUrl);
https://nodejs.org/dist/latest-v6.x/docs/api/url.html#url_url
const { URL } = require('url'); const myUrl = new URL('http://example.com'); const myUrlString = myUrl.toString();
https://nodejs.org/dist/latest-v8.x/docs/api/url.html#url_url
wn9m85ua3#
URL类别
版本10.0.0|类别现在可在全域对象上使用。这里提到:Node.js文档-类:网址因此,在没有require('url')的情况下,此操作应该可以正常工作:
require('url')
const myUrl = new URL('http://example.com');
wj8zmpe14#
您取出此信息的文档适用于8.4.0版本的node。如果它不适合您,这意味着您的node是6.11.2版本。然后,只需更改URL的字母大小写-
8.4.0
node
6.11.2
URL
const { Url } = require('url'); const myUrl = new Url('http://example.com');
因为url模块导出的是Url,而不是URL。
url
Url
4条答案
按热度按时间wnrlj8wa1#
我遇到了同样的问题,然后我研究了url模块并找到了解决方案
对于节点V6,使用:
或
如果查看该模块,它会导出5个方法,其中一个是Url,因此如果需要访问Url,可以使用这两个方法中的任意一个
h79rfbju2#
您是否使用节点6而不是节点8?
节点6
https://nodejs.org/dist/latest-v6.x/docs/api/url.html#url_url
节点8
https://nodejs.org/dist/latest-v8.x/docs/api/url.html#url_url
wn9m85ua3#
节点v10.0.0及更高版本(当前为节点v19.x)
URL类别
版本10.0.0|类别现在可在全域对象上使用。
这里提到:Node.js文档-类:网址
因此,在没有
require('url')
的情况下,此操作应该可以正常工作:wj8zmpe14#
您取出此信息的文档适用于
8.4.0
版本的node
。如果它不适合您,这意味着您的
node
是6.11.2
版本。然后,只需更改URL
的字母大小写-因为
url
模块导出的是Url
,而不是URL
。