0
Reactをnpmで設定しようとしています。そのため、rails-react宝石なしで使用します。 私はBrowserifyをインストールし、反応して反応します。それはうまくいくようですが、私は単純な「こんにちは世界」の例を実行することができました。Rails、Browserify and coffeescriptで反応する
ここではもっと複雑なものについてです。私は既にレールを搭載した部品をたくさん持っているので、これらを変換する必要があります。
私が作成したとinitスクリプト(init.js.coffee)
React = require('react')
ReactDOM = require('react-dom')
PhotoRoot = require('photo_root')
およびこれらの2つのファイルが同じフォルダ内にあるコンポーネント(photo_root.js.coffee)
module.exports = React.createClass
getInitialState: ->
null
getDefaultProps: ->
null
showCard: (photoId) ->
this.refs.card.setPhotoId photoId
render: ->
React.DOM.div {className: 'photo-root'},
React.createElement PhotoGrid, showCard: @showCard
React.createElement PhotoActionCard, photoId: 615, ref: "card"
。
私はこれを実行すると、私はBrowserifyRailsからエラーを取得する:: BrowserifyErrorを:
Error while running `/Users/mh/rails_projects/phototank/node_modules/.bin/browserifyinc -t coffeeify --extension=".js.coffee" --list --cachefile=/Users/mh/rails_projects/phototank/tmp/cache/browserify-rails/browserifyinc-cache.json -o "/Users/mh/rails_projects/phototank/tmp/cache/browserify-rails/output20170205-9947-edkf1y" -`:
events.js:154
throw er; // Unhandled 'error' event
^
Error: Cannot find module 'photo_root' from '/Users/mh/rails_projects/phototank/app/assets/javascripts/components'
at /Users/mh/rails_projects/phototank/node_modules/browser-resolve/node_modules/resolve/lib/async.js:46:17
それは右の場所で「photo_root」を探していますが、それを見つけていません。拡張機能とは何か関係がありますか?私はcoffeescriptを使用しています!
感謝!簡単だった