Spring’16
リリースノート輪読
Lightning Component
Tokyo Salesforce Developer Group Meetup #11
自己紹介
山﨑 真吾
株式会社チームスピリット
zaki___yama
Blog: 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 Tokens
https://developer.salesforce.com/docs/atlas.en-us.200.0.lightning.meta/lightning/tokens_standard.htm
注) 使うときは
defaultTokens.tokens に
<aura:tokens
extends=“force:base">
が必要
ありがとうございました

Tokyo Salesforce Developer Group Meetup #11

Editor's Notes

  • #5 https://releasenotes.docs.salesforce.com/ja-jp/spring16/release-notes/rn_lightning.htm?edition=&impact=
  • #7 https://releasenotes.docs.salesforce.com/ja-jp/spring16/release-notes/rn_lightning_access_errors.htm