답변:
이미지 URL을 가져 오기 위해 아래 코드를 사용하십시오. view
<img src="<?php echo $this->getViewFileUrl('Vendor_Module::images/image.png'); ?>" />
최신 정보:
<?php echo $block->getViewFileUrl('images/demo.jpg'); ?>
도우미 또는 컨트롤러에서 이미지 경로를 얻으려면
use Magento\Framework\View\Asset\Repository;
use Magento\Framework\App\RequestInterface; // for $this->request
파일에.
저장소를 추가하고 객체 assetRepo
&를 만들고 request
함수를 사용하여 이미지 경로를 호출하면,
$params = array('_secure' => $this->request->isSecure());
$this->assetRepo->getUrlWithParams('Nitesh_Module::images/image.png', $params);
vendor\magento\module-payment\Model\CcConfig.php::getViewFileUrl($fileId, array $params = [])
기능 참조
편집하다
설정 스크립트, API 호출 및 Cronjobs에 대한 올바른 이미지 경로를 얻으려면 올바른 이미지 경로를 얻으려면 아래와 같이 에뮬레이션을 추가해야합니다.
public function __construct(
\Magento\Framework\View\Asset\Repository $assetRepo,
\Magento\Framework\App\RequestInterface $request,
\Magento\Store\Model\App\Emulation $appEmulation
)
{
$this->assetRepo = $assetRepo;
$this->request = $request;
$this->appEmulation = $appEmulation;
}
public FunctionName($param){
$this->appEmulation->startEnvironmentEmulation($storeId, \Magento\Framework\App\Area::AREA_FRONTEND, true);
$params = array('_secure' => $this->request->isSecure());
$this->assetRepo->getUrlWithParams('Nitesh_Module::images/image.png', $params);
$this->appEmulation->stopEnvironmentEmulation();
}