Skip to content

Toastable API ​

Toast 通知を表示するためのヘルパーです。

使用方法 ​

ruby
require 'opal_vite/concerns/v1/toastable'

class MyController < StimulusController
  include OpalVite::Concerns::Toastable
end

メソッド ​

dispatch_toast(message, type = 'info') ​

Toast 通知を発火

ruby
dispatch_toast('操作が完了しました', 'success')
dispatch_toast('エラーが発生しました', 'error')

show_success(message) ​

成功通知(緑)

ruby
show_success('保存しました')

show_error(message) ​

エラー通知(赤)

ruby
show_error('保存に失敗しました')

show_warning(message) ​

警告通知(黄)

ruby
show_warning('入力内容を確認してください')

show_info(message) ​

情報通知(青)

ruby
show_info('新しいメッセージがあります')

Toast コントローラ側の実装 ​

Toast を表示するには、show-toast イベントをリッスンする Toast コントローラが必要です:

ruby
class ToastController < StimulusController
  def connect
    on_window_event('show-toast') do |event|
      detail = event.detail
      show_toast(detail.message, detail.type)
    end
  end

  def show_toast(message, type)
    # Toast 表示ロジック
  end
end

使用例 ​

ruby
class FormController < StimulusController
  include OpalVite::Concerns::Toastable
  include OpalVite::Concerns::StimulusHelpers

  def submit
    if valid?
      save_data
      show_success('フォームを送信しました')
    else
      show_error('入力内容に誤りがあります')
    end
  end
end

Released under the MIT License.