【Bubble開発】ドラッグ&ドロップ実装時の画面遷移によるデザイン崩れの対処法

Bubbleの「Draggable Elements」プラグインを使えば、ユーザーが要素をドラッグ&ドロップして並び替えを行えるUIを実現できます。

ただし、ドラッグ中にページ遷移が発生すると、画面が崩れるバグが発生することがあります。

この記事では、そのバグの内容と対処法を解説します。

実装手順

  1. ドラッグ対象のGroupにDraggable属性を設定
  2. ドロップ先エリアを定義
  3. ドラッグ対象Groupをクリックしたときの遷移設定を追加
  4. ドラッグ中は画面遷移しない条件を追加(バグ対策)

また、本メディアを運営する「EPICs株式会社」は、ノーコードを活用したアプリ・システム開発を行っております。大手ノーコードツールであるBubbleからも、公式代理店として認定されています。

従来のスクラッチ開発に比べ、ノーコードツールを活用した開発には以下のメリットがあります。

  • 開発期間をおよそ1/3に抑えられる → 検証や新規事業に向いている
  • 開発費用をおよそ1/3に抑えられる → 浮いた費用を別の領域に利用できる
  • リリース後の改修スピードも早い → PDCAを早く回せる

日本最大級のノーコード開発実績を持つ弊社なら、高度なものもスピーディーに開発することが可能です。ぜひご相談ください。

EPICs株式会社の特徴
  • 日本最大級のノーコード開発実績 → 高度な開発もスピーディー
  • 複数のノーコードツールに対応 → 最適なツール選びで開発費用・期間を最大限抑えられる
  • マーケティングまで支援が可能
目次

実装方法

今回ドラッグ&ドロップの実装をするにあたって利用したプラグインは「Draggable Elements」です。

下記手順では、プラグイン「Draggable Elements」の設定から解説します。

ドラッグ対象GroupにDraggableを設定

  • 対象:ドラッグの対象エレメントやグループ
  • 設定方法:
    • プラグインのドラッグ属性を対象Groupやエレメントに付与(通常は属性パネルで設定)
    • Draggable IDの設定は、動的な要素を使って個別化

ドロップエリアの定義

  • DropAreaを画面内に設置し、ドラッグ可能要素がこのエリア内でのみ移動できるように設定します。
  • ドラッグ後の並び順更新は、ワークフローでDB更新処理を行います。

画面遷移のワークフローを設定

  • 対象:対象のグループもしくはエレメントがクリックされたとき
  • アクション:Go to page(編集ページへ)
  • パラメータ送信:対象ToDoの unique id を渡すことで、編集対象が特定されます

ドラッグ中は画面遷移を抑制する(バグ対策)

今回起きていたバグ

  • ユーザーが対象項目をドラッグしている最中に、そのまま誤ってクリック扱いになると画面遷移が発生
  • 結果、ドラッグ処理が中断され、デザインが崩れる

対処法

「Group Todo_全部 is clicked」ワークフローの 「Only when」 条件に、以下の条件式を追加する

Only when → Drag/dropGroup todo_全部 is dragged is “no”

これにより、ドラッグ操作中はクリックイベントが発火せず、意図しない画面遷移が発生しなくなります。

補足:なぜこのバグが起きるのか?

Bubbleの「Draggable Elements」プラグインは、ドラッグ処理とクリックイベントの区別が曖昧なケースがあり、ドラッグ中にクリックイベントが同時に発火することがあります。その結果、未完了のドラッグが原因でレイアウトが乱れるというバグが起きます。

その対策として「ドラッグ中は画面遷移やクリックアクションを制限する」ことが最適です。

以上のひと手間を加えることで、デザイン崩れを防ぐことができます。

  • Bubbleでドラッグ&ドロップ機能を使う際は、ドラッグ中の画面遷移に要注意
  • 「Only when」で is dragged is no 条件を入れることで、安全にクリック処理と切り分けられる
  • Draggable Elements プラグイン利用時は、UIの状態管理を丁寧に行うことがバグ防止に繋がる

【ノーコード実績日本最大級!】ノーコード開発ならEPICs株式会社

当社はノーコード開発において日本最大級の実績を誇り、最安30万円、最短2週間という業界トップクラスのスピードと価格でサービスを提供しています。

他社との決定的な違いは、複数のノーコードツールに対応していること。お客様の要件に最適なツールを選択することで、開発期間の短縮と費用削減を同時に実現します。

さらに、アプリ//システム開発だけでなく、マーケティング支援まで一貫して対応可能。「良いアプリを作ったが、ユーザーが集まらない」という課題を解決するため、集客戦略の立案から実行まで包括的にサポートいたします。

特にMVP開発から本格運用まで段階的に進めたい企業様は、ぜひご相談ください。

この記事を書いた人

日本最大級のノーコード開発実績を誇り、大手ノーコードツールであるBubbleの公式代理店にも認定されているEPICs株式会社の開発チーム。

目次