Upload
shingo-yamazaki
View
444
Download
0
Embed Size (px)
Citation preview
Spring’16リリースノート輪読Lightning Component
Tokyo Salesforce Developer Group Meetup #11
自己紹介山﨑 真吾株式会社チームスピリット zaki___yamaBlog: http://dackdive.hateblo.jp/
Lightning Component はそんなに…前回のハイライト
PR
http://zaki-yama.github.io/salesforce-developers.info/ Python 製 静的サイトジェネレータ Pelican + GitHub Pages で作ってます
ニュースサイト作りました
本日お話すること• アクセス権チェックのより厳格な適用• Lightning Out ( ベータ )• Lightning コンポーネントトークン
( 開発者プレビュー )
本日お話しないこと• $A.error() の廃止 • format() による表示ラベルパラメータの動的な入力• 安全なクライアント側キャッシュによるパフォーマンスの改善• Sfdc JavaScript グローバルの削除• List または Map パラメータを使用した Apex コントローラでのエラーの解決
アクセス権チェックのより厳格な適用
アクセス権チェックのより厳格な適用• <aura:application> や
<aura:component> にaccess=“…” 属性が 必須 になります
• Spring’16: ブラウザコンソールで警告のみ ( デバッグモード限定 )
• Summer’16 以降 : アクセスできなくなる
access 属性の種類• private (aura:attribute のみ )
• 外部参照不可• public : デフォルト
• 同じ名前空間内で使用可能• global
• すべての名前空間で使用可能• 管理パッケージとして配布するコンポーネントはこれ?
https://developer.salesforce.com/docs/atlas.ja-jp.198.0.lightning.meta/lightning/access_intro.htm
WARNING の一例
よくわからないこと• 「コンポーネントを表示した時」ではなく
<ui:xxx> 系コンポーネントを操作した時に警告が表示されている?• バグくさい…
• ためしに access なしで管理パッケージ化、他組織にインストール• App Builder 使って S1, LEX で表示 → 警告出ない• <namespace:Foo /> でコードに埋め込み → 不可
• デフォルトで public => public なら省略可能?補足)なので、先ほど「必須」と書きましたが実際には「 global だけはちゃんと定義しないと、インストールして使ってもらうことができなくなりますよ」となるんじゃないかというのが今のところの解釈です。デフォルト public なのに全コンポーネントに access=“public” って書け、だとちょっと面倒ですよね。。。
Lightning Out ( ベータ )
Lightning Out ( ベータ )
• Lightning Component を Lightning の外でも使えるような仕組み• Visualforce 内での使用は Winter’16 から可能だった (LC4VF)• Spring’16 で Force.com 外からも利用可能に!→ ドキュメント見つからない問題 ( 英語版も )
公式ブログでも
参考 1: Visualforce で使う
参考 1: Visualforce で使う
• 専用の Lightning App を用意してコンポーネントを内包する• App は extends=“ltng:outApp” が必要
参考 1: Visualforce で使う• lightning.out.js は現在
<apex:includeLightning />• $Lightning.use -> createComponent
1. コンポーネント2. 属性3. 挿入位置4. callback
https://developer.salesforce.com/docs/atlas.ja-jp.198.0.lightning.meta/lightning/components_visualforce.htm( 注 : Winter’16)
参考 2: Force.com 外から呼ぶ
http://appirio.co.jp/category/tech-blog/2015/12/hello-world-lightning-out/
Spring’16 で多少は設定が楽になったのかなあ。。。といったところ
Lightningコンポーネントトークン( 開発者プレビュー )
Lightning コンポーネント トークン• コンポーネントの CSS 用に変数を定義できる• コンポーネントと独立したファイル
( ファイル名も指定されている )
トークンの使い方• defaultTokens.tokens ( ファイル名固定 )
• コンポーネントの CSS 側
標準設計トークン• 標準で用意された変数群
Lightning Component Developer Guide: Standard Design Tokenshttps://developer.salesforce.com/docs/atlas.en-us.200.0.lightning.meta/lightning/tokens_standard.htm
注 ) 使うときはdefaultTokens.tokens に
<aura:tokens extends=“force:base"> が必要
ありがとうございました