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

如何使用Resolvers?有没有示例? #293

Open
2 tasks done
parlay96 opened this issue Dec 31, 2023 · 11 comments
Open
2 tasks done

如何使用Resolvers?有没有示例? #293

parlay96 opened this issue Dec 31, 2023 · 11 comments

Comments

@parlay96
Copy link

Description

image
我想该这个路径,我需要怎么写解析器呢?

Suggested solution

image
我想该这个路径,我需要怎么写解析器呢?

Alternative

No response

Additional context

No response

Validations

  • Read the FAQ.
  • Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
@parlay96
Copy link
Author

image
我不想再beforeWriteFile方法里面去修改我得内容信息

@parlay96
Copy link
Author

image
这个gouzi钩子能不能给我一个 内容转换之前的参数, 你给我转换之后的 我确实不好判断啊!

@parlay96
Copy link
Author

还有就是
image
vite-plugin-dts在打包项目的plugins里面根本没啥作用,为啥要把它跟工程关联起来?它给我感觉完全可以自己独立运行啊。传入一个目录 去找文件即可。vite-plugin-dts并没有对我的打包的文件改变什么。

@parlay96
Copy link
Author

image
如何替换别名呢?

@parlay96
Copy link
Author

你能不能写个文档 示例呢 你文档只有一些方法描述。 谢谢

@qmhc
Copy link
Owner

qmhc commented Jan 2, 2024

你可以使用 aliasesExclude 忽略所有的别名,然后在 beforeWriteFile 中自行处理别名转换。

你可以查看已有的 Resolver 代码了解它们是如何工作的,编写 Resolver 需要你对 TypeScript 编译有一定的基础了解,它接受一些文件的原始信息和 TypeScript 编译相关的对象,需返回转换后的 dts 文件路径和内容。

@parlay96
Copy link
Author

parlay96 commented Jan 2, 2024

@qmhc 谢谢

@qmhc
Copy link
Owner

qmhc commented Jan 2, 2024

它给我感觉完全可以自己独立运行啊

当人们使用一样东西来处理某些东西,会更倾向于用它来处理更多的东西,就像如果你在使用 Vue,你会更倾向使用 Vue 编写的库,而不是原生 js 编写的。

当然你提的这个可以作为后面的开发计划,为其提供一个可单独使用的途径。

@parlay96
Copy link
Author

parlay96 commented Jan 3, 2024

image
@qmhc 为啥我这里老是 排除不掉呢

@HaibaraAiSherry
Copy link

老哥,你的这个问题解决没,在monorepo下面,如果设置了paths,声明文件确实是会被转换成相对路径,但是如果用aliasesExclude忽略掉路径别名的话,最终生成的文件里面,又会把其他monorepo仓库下的声明也合并到当前仓库,我们应该遇到的是同样的问题。

@Roman-Lo
Copy link

老哥,你的这个问题解决没,在monorepo下面,如果设置了paths,声明文件确实是会被转换成相对路径,但是如果用aliasesExclude忽略掉路径别名的话,最终生成的文件里面,又会把其他monorepo仓库下的声明也合并到当前仓库,我们应该遇到的是同样的问题。

我这两天也是遇到了类似的问题。最终也是通过aliasesExclude解决了,我的做法是这个字段设置的值跟主配置的rollupOptions.external的值一致,那么他的输出行为其实也会跟rollup打包行为一致。

不过因为我的组件有很多secondary entries,所以用了正则匹配去处理别名排除

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

No branches or pull requests

4 participants