質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

0回答

779閲覧

javascript ブラウザ上でundefindと表示される。

taka1213

総合スコア0

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2020/10/25 10:02

前提・実現したいこと

使用言語はrubyとjavascripuです。rails でchatのアプリを作っているのですがaction cableを使い非同期通信を行いたいのですがうまく表示されずチャット画面情に非同期の状態でメッセージではなくundfindと表示されます。
aとbでチャットを行っていてaがおはようと送るとbの方の画面は更新しないでundefindと表示されるので情報の中身だけいってないと思われます。

発生している問題・エラーメッセージ

console上ではerrorはないのですがブラウザ上でundefindと表示される

該当のソースコード

ruby javascript class MessageChannel < ApplicationCable::Channel def subscribed stream_from "message_channel" end def unsubscribed # Any cleanup needed when channel is unsubscribed end end @message = @room.messages.new(message_params) if @message.save ActionCable.server.broadcast 'message_channel', content: @message redirect_to room_messages_path(@room) else @messges = @room.messages.includes(:user) import consumer from "./consumer" consumer.subscriptions.create("MessageChannel", { connected() { // Called when the subscription is ready for use on the server }, disconnected() { // Called when the subscription has been terminated by the server }, received(data) { const html = `<p>${data.content.text}</p>`; const messages = document.getElementById('messagesid'); const newMessage = document.getElementById('message_content'); messages.insertAdjacentHTML('afterbegin', html); newMessage.value=''; } }); <div class="messages"> <div class="messages" id="messagesid">

試したこと

検証してidの確認

補足情報(FW/ツールのバージョンなど)

Rails 6.0.3.3

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/10/25 20:04

id=message_content はどこでしょう。
taka1213

2020/10/26 00:52

_main_chat.html.erb <%= form_with model: [@room, @message], class: 'form', local: true do |f| %> <div class="form-input"> <%= f.text_field :content, class: 'form-message', placeholder: 'type a message' %> <label class="form-image"> <span class="image-file">画像</span> <%= f.file_field :image, class: 'hidden' %> </label> </div> <%= f.submit '送信', class: 'form-submit' %> <% end %> 返信ありがとうございます上記の記述がブラウザ上の検証した際に下記のようにidとして置き換わってる形になります。 <input class="form-message" placeholder="type a message" type="text" name="message[content]" id="message_content">
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問