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

有两个问题想请教 #5

Closed
18518300669 opened this issue Jun 8, 2020 · 3 comments
Closed

有两个问题想请教 #5

18518300669 opened this issue Jun 8, 2020 · 3 comments

Comments

@18518300669
Copy link

1.在doc的mdx中这样引入css

import './style'

在开发环境中,样式可以用,但在build之后,部署到github,样式会没得到引用。

2.关于icon组件,使用svg-sprite-loader方式,在gatsby-config文件写入gatsby-plugin-svg-sprite,同样,在本地开发环境起作用,但是在build之后,并不会好用。

请问,这两个问题能帮忙分析下是为什么吗?

@worldzhao
Copy link
Owner

sideEffects字段是为了做组件库的tree shaking,用户生产环境打包的时候会移除掉引用但未使用的文件(style.ts当然属于此类),由于只配置了lib esmdist三个文件夹,故这三个文件夹下面不会删除。

我们的文档项目也相当于一个应用程序,所以把自己的样式给摇掉了...可以:

  • 删除掉sideEffects字段(毕竟使用了babel-plugin-import,显得sideEffects有些鸡肋)
  • sideEffects字段增加components/**/style/**等文件夹,避免删除其内样式,但作为npm包这个配置是多余的,只是为了文档样式不丢失,不如全删掉

由于我在公司内部使用的css in js方案所以不会出现这种情况(不会存在引用但未使用的脚本文件),的确是我疏忽了,感谢提问指出问题。

@18518300669
Copy link
Author

果然,如你所说,是这个问题导致的。关于这个问题,我的思路一直想偏了,一直在寻找docz的本地和开发的差异。
非常感谢,困扰我好几天了。
地址发来,外卖奶茶奉上。

@worldzhao
Copy link
Owner

果然,如你所说,是这个问题导致的。关于这个问题,我的思路一直想偏了,一直在寻找docz的本地和开发的差异。
非常感谢,困扰我好几天了。
地址发来,外卖奶茶奉上。

哈哈,本来就是我没写清楚,仓库代码也有问题,不用不用啦,能帮到你就好!

worldzhao pushed a commit that referenced this issue Jun 15, 2020
sideEffects配合webpack只可以做到js部分的tree
shaking,样式还是需要自己引入,反而会影响文档应用的样式,在使用babel-plugin-import的情况下,删除是可以接受的

fix #5
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

2 participants