MoreBeerMorePower

Power Platform中心だけど、ノーコード/ローコード系を書いてます。

キャンバスアプリで数式を含むテキストの新しい書き方 $-String Interpolation

f:id:mofumofu_dance:20220408113753p:plain

Power Appsのキャンバスアプリでテキストの中で数式を使うような場合 (例えば "ようこそ XXさん" のXXにユーザー名を入れるケース)、これまでは "&"で前後の文字列と数式を結合させていました。

Label.Text :  "ようこそ" & User().FullName & "さん"

f:id:mofumofu_dance:20220408111140p:plain

このような数式を含む場合のテキストの書き方に、新しい方法が追加されていたのをRezaが発見しました。

今回はツイートの動画だけではわからないという方にむけて、新しい方法を紹介します。

※この新機能は既定の環境でもPower AppsのAuthoring versionを最新にすることで利用できます。

f:id:mofumofu_dance:20220408114042p:plain

$-String interpolation

この新しい書き方は開発言語ではよく知られたもので、C# では $-string interpolation, Pythonでは f-stringsと呼ばれる記法に対応します。

先ほどの場合と同様に、ユーザー名を User().FullNameで表示したい場合、$-String interpolationでは以下のように表現します。

Label.Text : $"ようこそ {User().FullName} さん"

ポイントは "...."で囲まれるテキストの前に $ を付与することと、数式を使う箇所を {...}で囲むことです。

これによって{...}で囲まれた部分の数式が評価され、画面上ではユーザーのフルネームに置き換えられます。

f:id:mofumofu_dance:20220408112357p:plain

テキスト内で{ } を使いたい場合

String interpolationを有効にするために $をつけていて文章中で { }を使いたいときには、{} を2回重ねて入力することでエスケープすることができます。

f:id:mofumofu_dance:20220408112659p:plain

おわり

新しいテキストの書き方、String interpolationは新しく何か特別なことができる機能ではありませんが、さまざまなバックグラウンドを持つユーザーがより効率的にアプリを作成する上で重要なアップデートだと思います。

個人的にはテンプレートなどで書きなれている分、 $ + {}の方が書きやすいです。

これまでの &で結合する方法ももちろん引き続き利用できますので、書きやすい方法で統一するとよいでしょう。

Rezaは新しい機能だけでなく、Power Appsの有効な使い方を多く紹介してくれていますので、ぜひTwitterでフォローしてください!

twitter.com