Skip to content
This repository has been archived by the owner on Jan 23, 2024. It is now read-only.

开发环境配置不起来 #32

Open
GeekSquirrel opened this issue Mar 18, 2023 · 1 comment
Open

开发环境配置不起来 #32

GeekSquirrel opened this issue Mar 18, 2023 · 1 comment

Comments

@GeekSquirrel
Copy link

开发环境

node v18.14.0

操作流程

git clone ...
npm i
npm run dev

遇到的问题

1. rollup报错,不认识typescript文件类型。

[!] Error: Unexpected token (Note that you need plugins to import files that are not JavaScript)
node_modules/assert-never/index.ts (26:33)
24:  *    }
25:  */
26: export function assertNever(value: never, noThrow?: boolean): never {
                                     ^
27:   if (noThrow) {
28:     return value
Error: Unexpected token (Note that you need plugins to import files that are not JavaScript)
    at error (/Users/squirrel/Projects/Obsidian/ObsidianPlugins/.obsidian/plugins/mx-bili-plugin/node_modules/rollup/dist/shared/rollup.js:198:30)
    at Module.error (/Users/squirrel/Projects/Obsidian/ObsidianPlugins/.obsidian/plugins/mx-bili-plugin/node_modules/rollup/dist/shared/rollup.js:12560:16)
    at Module.tryParse (/Users/squirrel/Projects/Obsidian/ObsidianPlugins/.obsidian/plugins/mx-bili-plugin/node_modules/rollup/dist/shared/rollup.js:12937:25)
    at Module.setSource (/Users/squirrel/Projects/Obsidian/ObsidianPlugins/.obsidian/plugins/mx-bili-plugin/node_modules/rollup/dist/shared/rollup.js:12842:24)
    at ModuleLoader.addModuleSource (/Users/squirrel/Projects/Obsidian/ObsidianPlugins/.obsidian/plugins/mx-bili-plugin/node_modules/rollup/dist/shared/rollup.js:22090:20)

这个在把@rollup/plugin-typescript包升级到最新的11.0.0版本,并且在tsconfig.json中加入“rootDir: 'src'”之后,似乎是解决了问题,能编译出main.js

2. 插件不可用

obsidian打不开编译好的main.js,报错如下

Plugin failure: mx-bili-plugin TypeError: require$$0$1 is not a function
    at Object.enableStreamingAPI (plugin:mx-bili-plugin:14972:19)
    at eval (plugin:mx-bili-plugin:14997:11)
    at anonymous (plugin:mx-bili-plugin:15005:2)
    at e.<anonymous> (app.js:1:1072034)
    at app.js:1:235836
    at Object.next (app.js:1:235941)
    at a (app.js:1:234680)

这个问题应该跟obsidian关系不大,还是编译出现了问题,好像与iconv-lite这个库有关,我找到了相关issue,但没解决这个问题。

@GeekSquirrel
Copy link
Author

部分解决了,在没有更好的方案前,必须用老版本的[email protected]
刚才新起了一个obsidian最新的项目模版,只跑一个express server也会报第二个错。
然后我就在以“obsidian express”为关键词找,几乎是有且仅有一个相关的结果,是一个youtube视频
根据视频所说,新版本的obsidian(1.0.3及以后)上用express新版本就会有类似上述第二个错误,他本人在网上找了好久也没找到原因。不过后来他发现了obsidian-advanced-slides这个项目用到了express,根据package.json,项目作者把express的版本写死在“14.15.5”,@types/express用的是“14.11.1”。
经过测试,确实可用。

@GeekSquirrel GeekSquirrel reopened this Mar 18, 2023
bcdax110 pushed a commit to bcdax110/mx-bili-plugin that referenced this issue Jan 19, 2024
Modify the "@rollup/plugin-typescript" and "express" versions.
The reason for modifying the dependency version is as follows:
- "@rollup/plugin-typescript": The previously used version could not successfully build the plugin (npm run dev and npm run dev)
- "express": The previously used version of "express" after modifying "@rollup/plugin-typescript" will prevent the plugin from loading successfully in Obsidian.

See aidenlx#32.
---
修改"@rollup/plugin-typescript "和 "express "版本。
修改依赖版本的原因如下:
- "@rollup/plugin-typescript": 之前使用的版本无法成功构建插件(npm run dev 和 npm run dev)。
- "express": 修改"@rollup/plugin-typescript "后,之前使用的 "express "版本会导致插件在 Obsidian 中无法成功加载。

参见 aidenlx#32
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant