无法将广告投放到我的Angular Dart应用中

时间:2018-04-25 17:21:05

标签: angular dart components adsense angular-dart

我正在尝试将Google AdSense广告投放到我的Angular Dart应用中。 但是,如果我将其粘贴到我的某个组件的html中,它就不会显示任何内容。

dashboard_component.html:

<head>
    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
    <script>
        (adsbygoogle = window.adsbygoogle || []).push({
        google_ad_client: "ca-pub-7364276574790830",
        enable_page_level_ads: true
        });
    </script>
</head>

1 个答案:

答案 0 :(得分:3)

出于安全原因,Angular会清除添加到组件模板的脚本标记。

您需要将脚本标记添加到index.html

您还可以在运行时使用命令式Dart代码添加脚本标记,例如在Angular组件的生命周期回调中,例如我在script tag in angular2 template / hook when template dom is loaded中为TypeScript解释(应该很容易转换为Dart。) Angular Dart版本不再有nativeElement

在类似情况下,我为脚本标记添加了一个唯一属性,然后使用querySelector检查是否已存在此类脚本标记以避免多次添加。

脚本标记还有一个load事件,通知脚本何时加载,因此您的代码可以在调用仅在加载脚本后可用的函数之前等待它。