[英]Uncaught ReferenceError: require is not defined?
我已經下載了 node-js,並且在文件夾中使用了 npm。 我已經下載了lodash包作為依賴項,它位於節點模塊文件夾中。
但是當我嘗試使用require()使用它時,它在控制台中給出了上述錯誤,並建議通過 vs 代碼使用ES6 模塊,而 require 是common.js的模塊
我有一個 package.json 文件,lodash 被列為依賴項。 我可以使用節點服務器在命令行中運行 lodash,但不能在瀏覽器中運行
除了node-js之外,我們是否需要安裝任何其他包才能運行 require() 函數? 我究竟做錯了什么? 我在 Windows 上使用最新版本的 node 和 npm let a = require('lodash');
如果 VSCode 建議你使用 ES6 模塊,那么你可能在你的項目中打開了 ES6 模塊支持,它覆蓋了 Node 對 CommonJS 模塊的默認支持。
用
import lodash from 'lodash';
而不是要求。
重新編輯:
我可以使用節點服務器在命令行中運行 lodash,但不能在瀏覽器中運行
嗯,是。 如果您在 Node.js 中運行旨在在 Node.js 中工作的程序,那么它就可以工作。 如果您在瀏覽器中運行相同的程序,那么它將無法工作。 僅僅在某處安裝 Node.js 並不能將瀏覽器變成 Node.js。
如果你想在瀏覽器中使用 ES6 模塊,那么:
import lodash from "./url/to/lodash.js";
因為瀏覽器不支持解析 npm 路徑。 如果模塊不是為在瀏覽器中運行而設計的,那么您也許可以使用 Webpack 之類的工具以一種有效的方式將其捆綁在一起(但這在模塊中不起作用取決於 Node.js 提供的 API)。 js,如fs
)。
您可以使用 express 框架來處理 NODE js
let express = require('express') ;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.