1

AngularJS アプリケーションに intercom.io を統合しようとしています。

スクリプトには、完全なロードの前に構成するパラメーターがいくつかあります。

<script id="IntercomSettingsScriptTag">
  window.intercomSettings = {
    // TODO: The current logged in user's email address.
    email: "john.doe@example.com",
    // TODO: The current logged in user's sign-up date as a Unix timestamp.
    created_at: 1234567890,
    app_id: "95b20cd5364bab3a2136e252d2862b8136aabe7e"
  };
</script>
<!-- Init script -->
<script>(function(){var w=window;var ic=w.Intercom;if(typeof ic==="function"){ic('reattach_activator');ic('update',intercomSettings);}else{var d=document;var i=function(){i.c(arguments)};i.q=[];i.c=function(args){i.q.push(args)};w.Intercom=i;function l(){var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='https://static.intercomcdn.com/intercom.v1.js';var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);}if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}};})()</script>

{{data.email}} を使用してメールを置き換えようとしましたが、残念ながら init スクリプトが intercomSettings の前に読み込まれます。ng-cloak はプレゼンテーション目的でのみ設計されているため、あまり役に立ちません。

どちらの方向を探せばよいかわかりません。コードをテストするには: http://plnkr.co/edit/2PJNLukBx0cTOPZXNwqs?p=preview

動作する場合は、ウィンドウの右下に小さな疑問符が表示されます。

4

2 に答える 2

2

すでに解決策を見つけたかどうかはわかりませんが、これを見てください。

https://github.com/maxiperezc/angular-intercom 基本的にインターコム スクリプトを angular にラップしているため、ディレクティブを使用してアプリケーション内で使用できます。

これはhttps://github.com/gdi2290/angular-intercomの改良版です- 不要なコードを削除しました

于 2014-01-16T08:58:59.980 に答える