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

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

新規登録して質問してみよう
ただいま回答率
85.48%
React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

2回答

1615閲覧

reactのtutorialをcoffee scriptで行っているが、エラーが出てしまう

ayu

総合スコア212

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2016/06/11 05:50

こんにちは。

railsでtutorialを行っておりますが、エラーになってしまい、理由がわかりません。

エラーメッセージ

Uncaught Invariant Violation: ReactDOM.render(): Invalid component element. Instead of passing a string like 'div', pass React.createElement('div') or <div />.

ソースコード
app/asset/javascripts/components/comment_box.js.jsx.coffee

$ -> CommentBox = React.createClass render: -> `<div className="commentBox"> hello, world! i am a commentbox. </div>` ReactDOM.render '<CommentBox />', document.getElementById('content')

コンパイル後

$(function() { var CommentBox; CommentBox = React.createClass({ render: function() { return <div className="commentBox"> hello, world! i am a commentbox. </div>; } }); return ReactDOM.render('<CommentBox />', document.getElementById('content')); });

app/views/comments/index.html/slim

#content

呼び出すものはCommentBoxになっている気がするのですが・・・

よろしければご教授をお願いしますm(_ _)m

生のjsより、coffee scriptで書いていきたいので・・・

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

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

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

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

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

guest

回答2

0

CoffeeScriptでするなら、Googleで「CoffeeScript react tutorial」と検索して見ると良いでしょう。

しかし、一番上に出て来るQiitaの記事は13.0系を使った古い記事ですね。なんですか、このraccyという作者は。私の方から私に対して0.15系で書き直すように催促しておきます。


【追記】
最新の0.15系で書き直させておきました。もう一つ、JSXを使わない純粋CoffeeScriptの場合も書かせておきました。参考にしてみてください。

CoffeeScriptであればJSX記法にこだわる必要はあまりありません。JSX記法で無くてもJade/Slimのような感じでそれなりに綺麗に書けるからです。どちらが良いのかは一長一短でなんとも言えませんが、Babel(ES6)やTypeScriptのようにJSX記法の方が圧倒的に書きやすいと言うことはないと思っています。

投稿2016/06/11 09:46

編集2016/06/12 07:34
raccy

総合スコア21735

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

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

ayu

2016/06/11 11:54

raccyさん、良記事ありがとうございますm(_ _)m
raccy

2016/06/12 07:36

0.15系を用いた最新のチュートリアルに基づいて書き直しましたので、参考にしていただければ幸いです。
ayu

2016/06/12 12:35

raccyさん、わざわざ書き直していただき、ありがとうございます! 確認させていただきました。 こういうのがあっさりと書けるように頑張ります!
guest

0

ベストアンサー

coffee-scriptjsxを書きたい場合はcoffee-reactを使用してください。

投稿2016/06/11 09:15

horse_n_deer

総合スコア452

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

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

ayu

2016/06/11 11:54

なるほど・・・ そういうことだったのですね。 ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問