[英]Unable to import URL class in Nodejs Typescript app
我正在嘗試從nodejs api導入URL類,以便可以解析URL並檢索其來源,主機名和路徑。
我正在嘗試通過輸入import * as URL from "url";
來完成此操作import * as URL from "url";
而且我還嘗試了import { URL } from "url";
而且我似乎無法使它為我工作。 任何幫助將不勝感激。
我試圖使用這種方式
var site = new URL("http://www.website.com");
它拋出一個錯誤,因為它指出URL不是構造函數
URL構造器是作為節點v7.0的一部分引入的。 import { URL } from "url";
如果使用節點> = v7.0,則是導入它的正確方法。 確保您也使用最新版本的節點類型:
npm install --save-dev @types/node
如果您的節點版本小於7.0,則可以使用parse
方法:
import * as url from "url";
var site = url.parse("http://www.website.com");
import * as url from 'Url';
{ parse: [Function: urlParse],
resolve: [Function: urlResolve],
resolveObject: [Function: urlResolveObject],
format: [Function: urlFormat],
Url: [Function: Url]
}
它不是構造函數。 您需要使用以下公開的方法之一:
import * as url from 'url';
console.log(url.parse('https://www.google.com'))
// Output:
Url {
protocol: 'https:',
slashes: true,
auth: null,
host: 'www.google.com',
port: null,
hostname: 'www.google.com',
hash: null,
search: null,
query: null,
pathname: '/',
path: '/',
href: 'https://www.google.com/' }
undefined
>
如果有人想知道如何使用URL
以便代碼在Node.js和瀏覽器環境之間可移植,那么我來提出以下解決方案:
import * as nodeUrl from "url";
const URL = typeof window !== "undefined" ? window.URL : nodeUrl.URL;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.