webpack中的~
比如我们可以看到一些css文件中有这样的代码:
@import ‘~antd/dist/antd.css‘;...
那么,这个 ~ 起什么作用呢?
首先,我们来看一下URL转换规则
1、如果URL是一个绝对路径(例如 /images/foo.png),它将会保留不变。
2、如果URL以 . 开头,它会作为一个相对模块请求被解析且基于你的文件系统中的目录结构进行解析。
3、如果URL以 ~ 开头,其后任何的内容都会作为一个模块请求被解析。这意味着你甚至可以引用node模块中的资源:
<img src="~some-npm-package/foo.png" />
4、如果URL以 @ 开头,它也会作为一个模块请求被解析。它的用处在于可以在webpack中设置别名。
其实和import,require没区别,只是这种方式不能写到css或者html里面,就写成了~ (css /less/ sass没有用于导入相关文件的特殊语法,
所以这里添加的~实际上是为了告诉webpack这里是从根目录开始寻找,而不是相对目录。)
Webpack 会将以 ~ 符号作为前缀的路径视作依赖模块而去解析
相关推荐
不知道该写啥QAQ 2020-11-12
webfullStack 2020-11-09
Yvettre 2020-09-15
想做大牛的蜗牛 2020-10-30
gloria0 2020-10-26
gaojie0 2020-09-11
SelinaChan 2020-08-14
不知道该写啥QAQ 2020-08-09
gloria0 2020-08-09
不知道该写啥QAQ 2020-08-02
hline 2020-07-29
SelinaChan 2020-07-28
wangdianyong 2020-07-23
webpackvuees 2020-07-23
yqoxygen 2020-07-20
不知道该写啥QAQ 2020-07-18
waterv 2020-07-18
81463166 2020-07-17