見出し画像

【Click】最近アップデートしてからcount機能が動かなくなった話

(なぜこれを書いたか)
最近Clickはアップデートでいろいろな機能が追加されてきました。これはこれでいいんですが、以前当たり前に使えていた機能が使えなくなったのもあり、困っています。

困りごとの一つにボタンを押すと押した数だけ数が増えていくというcount機能が使えなくなってしまいました。count機能って何それ!?っていう人も多いと思うので一応説明しておきます。

userデータベースに数を数える項目を追加し(例えばcount)、ClickFlowの更新にcountの部分にcount+1と入れておけばボタンを押すごとに1ずつ増えていく機能です。(私はcount機能と勝手に命名しています)

皆さんも、数によってエレメントの表示・非表示などを制御するときによく使いますよね?これが最近使えないので困っていました。自分のやり方が悪いのかと思ってAdaloで同じことをしたら問題なく1,2,3,4・・・と数が増えていきました。どうやらClick自体の問題のようです。

問題なのか、そういう仕様に変わってしまったのか分かりませんが、どうすれば使えるようになるか以下で説明します。

1.ボタンを押した数を表示させたい


以前はこんな形でcounter機能を実現していました。でも今はそれが出来ないんです。対策は後述します。
①userデータベースに数を数えるcountという項目を追加

②ボタンを押した回数がuserデータベースのcountに入るClickFlowを設定

③countが保持している数をホーム画面のインプットに表示します

④プレビュー画面で動作チェック
ボタンを押してもインプットには数が表示されない。以前は1,2,3・・・とボタンを押すごとに数が増加していった。(Adaloで同じことをやるときちんと数が増加していく)

2.対策として1回目にボタンを押すときのClickFlowを追加する

ボタンを押すとcount+1に数が1個ずつ入っていくはずなんですが、今は入って行かないんです。アプリを立ち上げた時は何も入って無いのでcountは0と思っていましたが、データ的にはempty(null)の扱いのようです。試しに最初から0を入れておくとボタンを押すごとに1,2,3・・・と数が増えていきます。

しかし最初がemptyの状態だと数の足し算が出来ないようなんです。仕方ないのでもう一つClickFlowを追加しました。

①countがemptyの場合のClickFlowを設定する
結局、user更新をもう一つ追加します

②追加したuser更新の中身
countがemptyの場合はcountに1を入れるというClickFlowです

count:1

(動作条件)
Logged In user > count
等しい
Empty

③今度はうまく行きました
最初に1が入り、ボタンを押す度に1ずつ増えていきます。

(注意点)
2つのClickFlowを設定しましたが、ボタンを1回目に押すClickFlowを2番目に書きます。順番を間違えると作動しません。

最初にボタンを1回目に押すClickFlowを書いてしまうとcountがその時点で1になってしまい、2個目のClickFlowで1が加算され、最初から2が出来てしまうからです。

最近は「Clickよ!何でそんなことが出来ないの!」と叫ぶことが多くなりました。アップデートしなくていいから以前出来ていたことは間違いなく出来るようにしてほしいです。

Clickでうまく動作しないとAdaloで同じアプリを作って動作確認しています。



この記事が気に入ったらサポートをしてみませんか?