Snowpack 无法从 node_modules 导入 JavaScript

问题描述

我目前正在使用 SNowpack 构建/准备应用程序。我正在尝试导入作为 self.people.findPerson(by: id) { $0.pets.append(contentsOf: newPets) } (块)的一部分安装在 dependencies 文件中的 JavaScript 库,但不知何故 SNowpack 没有选择该库。

这是(包含相关内容的摘录)package.json 文件

package.json

{ "private": true,"type": "module","scripts": { "build": "sNowpack build","preview": "sNowpack dev" },"dependencies": { "impress.js": "1.1.0" },"devDependencies": { "sNowpack": "3.3.7" },"engines": { "node": "14.x" } } 只包含以下几行:

sNowpack.config.js

我希望 SNowpack 将 /** @type {import("sNowpack").SNowpackUserConfig } */ export default { devOptions: { open: "none",},mount: { src: { url: "/",}; 库与此 HTML 文件捆绑在一起:

impress.js

有没有办法为这些东西配置 SNowpack?

解决方法

如果您只是想将 Impress 模块转换为 ESM,您是否考虑过尝试 esinstall

convert.mjs:

import {install} from 'esinstall';
await install(['impress.js'],{});
node convert.mjs

然后在您的 HTML 文件中:

 <script src="web_modules/impress.js"></script>
,

如果有人遇到类似的情况,我发现捆绑 link = results['items'][0]['link'] name = results['items'][0]['name'] size = results['items'][0]['size'] print("Content of link: " + link) print("Content of name: " + name) print("Content of size: " + size) (可能还有任何其他已经/尚未模块化的库)的方法是将它 Impress.js JavaScript 文件(注意 HTML import 标记中的 type="module"):

script
<!DOCTYPE html>
<html lang="en">
  <head>
    ...
  </head>
  <body>
    <script src="scripts/global.js" type="module"></script>
  </body>
</html>