【问题标题】:Parcel JS. Use of --public-url option包裹JS。使用 --public-url 选项
【发布时间】:2020-07-31 14:09:01
【问题描述】:
我将 Parcel JS 用于个人项目,我对这个选项感到非常困惑:
--公共网址
这是文档:https://en.parceljs.org/cli.html#options
真的很稀缺。
1) 它的主要用途是什么?
2) 它说它可用于:serve、watch 和 build。
使用 --public-url 时这 3 个选项有什么区别吗?
3) 最后但同样重要的是,--public-url 和 --out-dir 如何协同工作?当我们同时使用这两个选项时,设置是否有任何限制?
谢谢。
【问题讨论】:
标签:
javascript
node.js
webpack
frontend
parceljs
【解决方案1】:
-
--public-url 用于指定提供捆绑资产的位置。
举个例子:
默认值为--public-url /,生成这样的标签。
<script src="/src.133713ex.js">
如果站点不是从域根目录提供的,这将不起作用。
例如在 URL 为 username.github.io/project-name/ 的 Github Pages 站点上,您需要从 index.html 文件位置提供它们。
这就是--public-url 发挥作用的地方:
--public-url ./
通过将它添加到我们的构建选项中,我们将生成的标签更改为以下内容。
<script src="src.133713ex.js">
-
这只是意味着您可以通过各种方式使用它来启动包裹流程。
-
是的,他们确实一起工作! --out-dir 只是定义了生成捆绑文件的目录(默认为 /dist),--public-url 函数如上所述。
【解决方案2】:
注意:如果您更改--public-url,您可能必须在构建之前删除.parcel-cache 文件夹才能看到更改反映在您的站点中。否则,根据我的经验,index.html 会尝试访问与 public-url 更改之前相同的文件路径。