Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

framework和plugin配置里关于 path 信息处理的问题 #228

Closed
DevXiaolan opened this issue Jan 6, 2023 · 10 comments · Fixed by #229
Closed

framework和plugin配置里关于 path 信息处理的问题 #228

DevXiaolan opened this issue Jan 6, 2023 · 10 comments · Fixed by #229
Assignees
Labels
enhancement New feature or request

Comments

@DevXiaolan
Copy link
Contributor

现在framework和plugin 的配置里都有 path 或者 package 信息,
对于 package 的场合问题不大,因为有用到 require.resolve 。

而 path 的场合,是直接处理成相对/绝对路径,这里其实有点问题

比如我一个 framework 或 plugin 是不打算发布到 registry 的,那我肯定长期使用 path 的配置去引用,
那我建议需要参考这个包的 package .json 的 main 属性,而不是指定到具体的 dist 、 build 、libs 这样的目录位置。

@noahziheng
Copy link
Member

看起来是可行的,require.resolve 之前先判断一下有 package.json 的目标就解析 main 字段

@noahziheng
Copy link
Member

我这边可以改改,顺便重构一下 PluginConfigLoader,看起来对内部应该是没有副作用
cc @atian25 @DuanPengfei @whxaxes

@DevXiaolan
Copy link
Contributor Author

你动手我就不动了,在代码的整体性方面肯定没有你处理得好。

@atian25
Copy link
Member

atian25 commented Feb 14, 2023

解析 main 够不? export 那一堆配置呢?有没有现成的库来分析这块的?

@DevXiaolan
Copy link
Contributor Author

解析 main 够不? export 那一堆配置呢?有没有现成的库来分析这块的?

就是体力活,我溜了 🤣

@JerrysShan
Copy link
Collaborator

看起来是可行的,require.resolve 之前先判断一下有 package.json 的目标就解析 main 字段

main 字段不是默认会被 require 解析吗?

@DevXiaolan
Copy link
Contributor Author

看起来是可行的,require.resolve 之前先判断一下有 package.json 的目标就解析 main 字段

main 字段不是默认会被 require 解析吗?

说的是,如果配置里是使用 path 来提供路径,就不会走 require 的处理,这块要自己解析 main

@noahziheng
Copy link
Member

@atian25 或者就是说这里的解析 main 也走 require.resolve 拿到之后取对应那一层目录,这样就能做到兼用 main/exports

@noahziheng
Copy link
Member

@JerrysShan 现在的 path 加载没过 require.resolve

@atian25
Copy link
Member

atian25 commented Feb 14, 2023

@atian25 或者就是说这里的解析 main 也走 require.resolve 拿到之后取对应那一层目录,这样就能做到兼用 main/exports

嗯,resolve 后再 relative?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants