Adonis js Edge在assetUrl中获取域网址

时间:2019-06-17 07:26:06

标签: adonis.js

我是通过adonis邮件发送者发送电子邮件的,我想让域名包含在边缘文件中的图像中,但是由于发送的电子邮件不显示图像,我被困在如何添加域名上

所以在我的电子邮件边缘文件中

<html>
       .....other stuff

   <img 
      src="{{ assetsUrl('images/logo.png') }}"
    />
 </html>

此文档显示徽标。

快速检查

的输出
{{assetsUrl('images/logo.png')}}

它显示

/images/logo.png

这表明该域名未包含在assetUrl帮助器中。 我如何在边缘文件中获取域名,从而使src属性完整显示图片

2 个答案:

答案 0 :(得分:0)

我有一个解决方案,但这并不完美

您可以使用.env变量(例如:APP_URL,或自定义

边缘:

<img src="{{ APP_URL() }}{{ assetsUrl('images/logo.png') }}"/>

您需要创建start/hooks.js

const { hooks } = use('@adonisjs/ignitor')

hooks.after.providersBooted(() => {
    const Env = use('Env')
    const View = use('View')

    View.global('APP_URL', function () {
        return Env.get('APP_URL')
    })
})

同一问题:forum.adonisjs.com/t/grab-full-page-url/1998

答案 1 :(得分:0)

对于通过电子邮件发送图像,Adonis具有此功能。

const Helpers = use ('Helpers')

嵌入(filePath,cid,[选项]) 使用内容ID将图像嵌入HTML主体:

message.embed (Helpers.publicPath ('logo.png'),

https://adonisjs.com/docs/4.1/mail