Unexpected Token when minifying three.js and globe.js

未关闭
#57 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
25/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
停滞
技术栈
javascript, node.js, three.js, vite

调研方向

首先,使用提供的 bundle 和 package.json 中的版本重现报告中的命令 browserify -p tinyify index-D9djZuPL.js -o index.js。检查生成的 bundle 在报告的 parser 位置附近的内容,以及 tinyify 对其的处理方式;当命令在没有 Unexpected token 错误的情况下完成时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

Hello,

Thank you for this awesome tool.

I am receiving the following error when minifying my project:

/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:2929
    throw err
    ^

SyntaxError: Unexpected token (7:598206)
    at pp$4.raise (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:2927:15)
    at pp.unexpected (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:698:10)
    at pp$3.parseExprAtom (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:2326:12)
    at _class.parseExprAtom (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn-node@1.8.2/node_modules/acorn-node/lib/dynamic-import/index.js:77:117)
    at pp$3.parseExprSubscripts (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:2129:21)
    at pp$3.parseMaybeUnary (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:2106:19)
    at _class.parseMaybeUnary (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn-node@1.8.2/node_modules/acorn-node/lib/private-class-elements/index.js:122:54)
    at pp$3.parseExprOps (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:2041:21)
    at pp$3.parseMaybeConditional (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:2024:21)
    at pp$3.parseMaybeAssign (/home/mina/Documents/PMSoftware/Tender/Tender Attempt - 0003/codebase/globe/node_modules/.pnpm/acorn@7.4.1/node_modules/acorn/dist/acorn.js:1997:21) {
  pos: 602507,
  loc: Position { line: 7, column: 598206 },
  raisedAt: 602508
}

Node.js v22.5.1

Node Version:

node -v

v22.5.1

Command Run:

browserify -p tinyify index-D9djZuPL.js -o index.js

TsConfig:

cat tsconfig.json

{
	"compilerOptions": {
		"target": "ES2020",
		"useDefineForClassFields": true,
		"module": "ESNext",
		"lib": [
			"ES2020",
			"DOM",
			"DOM.Iterable"
		],
		"skipLibCheck": true,
		"checkJs": false,
		/* Bundler mode */
		"moduleResolution": "bundler",
		"allowImportingTsExtensions": true,
		"isolatedModules": true,
		"moduleDetection": "force",
		"noEmit": true,
		/* Linting */
		"strict": false,
		"noUnusedLocals": false,
		"noUnusedParameters": true,
		"noFallthroughCasesInSwitch": true
	},
	"include": [
		"src"
	]
}

Package.json

cat package.json

{
  "name": "globe",
  "private": true,
  "version": "0.0.0",
  "type": "module",
  "scripts": {
    "dev": "vite",
    "build": "tsc && vite build",
    "preview": "vite preview"
  },
  "devDependencies": {
    "@types/jquery": "^3.5.30",
    "jquery": "^3.7.1",
    "tinyify": "^4.0.0",
    "typescript": "^5.5.3",
    "vite": "^5.4.0"
  },
  "dependencies": {
    "@types/three": "^0.167.1",
    "globe.gl": "^2.32.5",
    "three": "^0.167.1"
  }
}

The file to be minified can be found on: https://drive.google.com/file/d/1DuqHZAO_CDXJm1prnJArkI4cShG9EIkW/view?usp=sharing

Any help would be greatly appreciated

主要语言
JavaScript
星标
405
派生
14
PR 合并指标
30 天内没有已合并 PR

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

browserify/tinyify 的其他 Issue

查看 browserify/tinyify 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。