资产清单文件 "manifest.json" 不存在
Asset manifest file "manifest.json" does not exist
在 symfony5 + webpack encore 应用程序上,我无法访问控制器中图像的 url。
Webpack 正在运行,我访问了 twig 中的 img。 (带版本控制)
manifest.json 文件存在,我已经构建了资产
$package = new Package(new JsonManifestVersionStrategy('C:\wamp64\www\svn\athena\public\build\manifest.json'));
echo $package->getUrl('build/images/tree/families.png');
=> 这是使用清单的直接文件地址。
但是 :
$package = new Package(new JsonManifestVersionStrategy('manifest.json'));
或
$package = new Package(new JsonManifestVersionStrategy( '/build/manifest.json'));
=> 我有 symfony 异常:资产清单文件“manifest.json”不存在。
如何使 manifest.json 文件地址成为相对地址?
谢谢
assets.yaml
framework:
assets:
json_manifest_path: '%kernel.project_dir%/public/build/manifest.json'
嗯,路径是 supposed to be absolute...
您可以注入 Packages
服务,它将自动配置:
use Symfony\Component\Asset\Packages;
public function controllerAction(Packages $packages)
{
$url = $packages->getUrl('build/images/tree/families.png');
}
在 symfony5 + webpack encore 应用程序上,我无法访问控制器中图像的 url。
Webpack 正在运行,我访问了 twig 中的 img。 (带版本控制) manifest.json 文件存在,我已经构建了资产
$package = new Package(new JsonManifestVersionStrategy('C:\wamp64\www\svn\athena\public\build\manifest.json'));
echo $package->getUrl('build/images/tree/families.png');
=> 这是使用清单的直接文件地址。
但是 :
$package = new Package(new JsonManifestVersionStrategy('manifest.json'));
或
$package = new Package(new JsonManifestVersionStrategy( '/build/manifest.json'));
=> 我有 symfony 异常:资产清单文件“manifest.json”不存在。
如何使 manifest.json 文件地址成为相对地址? 谢谢
assets.yaml
framework:
assets:
json_manifest_path: '%kernel.project_dir%/public/build/manifest.json'
嗯,路径是 supposed to be absolute...
您可以注入 Packages
服务,它将自动配置:
use Symfony\Component\Asset\Packages;
public function controllerAction(Packages $packages)
{
$url = $packages->getUrl('build/images/tree/families.png');
}