You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JavaScript项目中使用GitHub上的cubing/jsss开源模块

你遇到的报错核心原因有两个:

  • 浏览器原生ES模块不支持裸模块导入,官方示例里import from "scrambles"这种不带路径前缀的写法,只有使用打包工具或者配置了importmap才能识别,你直接放到浏览器里跑自然会触发第一个报错
  • 你手动补的路径指向的不是合法JS文件,服务器返回了404页面(HTML格式),所以触发了MIME类型错误
    另外这个库的源码是TypeScript编写的,直接复制仓库src目录的源码无法直接在浏览器运行,需要先编译为标准JS文件,所以你之前复制文件的操作本身就不可行。

问题1:index.js应该放在什么位置

直接放在项目根目录,和index.html同级即可,这个位置完全没问题,之前的报错和index.js的摆放位置无关。

问题2:不需要手动复制仓库文件,推荐两种集成方案

方案一:零构建纯静态页面方案(无需安装工具)

无需下载任何仓库文件,直接修改index.html添加importmap配置即可:

<!-- index.html 完整代码 -->
<script type="importmap">
{
  "imports": {
    "scrambles": "./libs/cubing/scrambles/index.js"
  }
}
</script>
<script src="index.js" type="module" defer></script>

<select id="eventID">
  <option value="333" selected>3x3x3</option>
  <option value="444">4x4x4</option>
</select>
<button id="new-scramble">New scramble</button><br>

<div id="scramble-string"></div>

你只需要获取cubing包的编译后产物,放到项目的libs/cubing目录即可,index.js保持官方示例的写法无需修改。

方案二:npm管理依赖方案(配合打包工具使用)

如果你的项目用npm管理依赖,直接执行安装命令:

npm install cubing

然后修改index.js的导入语句即可:

import { randomScrambleStringForEvent } from "cubing/scrambles";

其余逻辑保持和官方示例一致,经打包工具构建后即可正常运行。

内容的提问来源于stack exchange,提问作者FuzzyLogic12

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 01:27:03