webpack-encore .setPublicPath 相对忽略
webpack-encore .setPublicPath relative ignored
我尝试设置资产的相对路径
.setPublicPath('build/')
但是编译时我得到
The value passed to setPublicPath() should *usually* start with "/" or be a full URL (http://...). If you're not sure, then you should probably change your public path and make this message disappea
并生成links
{% block javascripts %}
{{ encore_entry_script_tags('app') }}
{% endblock %}
并得到
<script src="/build/runtime.js" defer></script>
<script src="/build/vendors~app.js" defer></script>
<script src="/build/app.js" defer></script>
我需要构建/不是/构建/
我的服务器带有基于文件夹的应用程序,所以为什么不能像我想要的那样设置补丁。我知道当应用程序使用路由 /aa/bb/cc 时,它会停止工作。但是这个应用程序在一页中。一个 link 所有请求都是 ajax.
就像消息中的“通常 应该以“/”开头“应该必须替换我们添加 / 因为这对你更好...
好的,我找到了可行的解决方案
https://symfony.com/doc/current/frontend/encore/faq.html
.setOutputPath('public/build/')
- .setPublicPath('/build')
+ // this is your *true* public path
+ .setPublicPath('/myAppSubdir/build')
+ // this is now needed so that your manifest.json keys are still `build/foo.js`
+ // (which is a file that's used by Symfony's `asset()` function)
+ .setManifestKeyPrefix('build')
我从 env 读取了 myAppSubdir,它几乎是动态的。
我尝试设置资产的相对路径
.setPublicPath('build/')
但是编译时我得到
The value passed to setPublicPath() should *usually* start with "/" or be a full URL (http://...). If you're not sure, then you should probably change your public path and make this message disappea
并生成links
{% block javascripts %}
{{ encore_entry_script_tags('app') }}
{% endblock %}
并得到
<script src="/build/runtime.js" defer></script>
<script src="/build/vendors~app.js" defer></script>
<script src="/build/app.js" defer></script>
我需要构建/不是/构建/
我的服务器带有基于文件夹的应用程序,所以为什么不能像我想要的那样设置补丁。我知道当应用程序使用路由 /aa/bb/cc 时,它会停止工作。但是这个应用程序在一页中。一个 link 所有请求都是 ajax.
就像消息中的“通常 应该以“/”开头“应该必须替换我们添加 / 因为这对你更好...
好的,我找到了可行的解决方案
https://symfony.com/doc/current/frontend/encore/faq.html
.setOutputPath('public/build/')
- .setPublicPath('/build')
+ // this is your *true* public path
+ .setPublicPath('/myAppSubdir/build')
+ // this is now needed so that your manifest.json keys are still `build/foo.js`
+ // (which is a file that's used by Symfony's `asset()` function)
+ .setManifestKeyPrefix('build')
我从 env 读取了 myAppSubdir,它几乎是动态的。