2

browserify-rails のドキュメントには、「デフォルトでは、/app および /node_modules 内のファイルのみがブラウザー化される」と記載されています。ただし、npmjs からパッケージをインストールして で参照しようとするとapplication.js、アプリはそれを見つけることができません。browserify-rails を使用して Rails アプリで node_modules を要求する方法はありますか?

# command line
$ npm intl-tel-input --save

# application.js.coffee
#= require intlTelInput

# throws error
Error: Cannot find module 'intlTelInput' from '.../app/assets/javascripts'
4

1 に答える 1

2

使用する#= require ...と、Rails アセット パイプラインが引き続き使用され、npm モジュールにアクセスできなくなります。代わりにすべきことは、使用することです

var intlTelInput = require("intlTelInput");

どの browserify が npm モジュールから解析して検索するか。ES6 パーサー (babelify など) が含まれている場合は、次のようにすることもできます

import intlTelInput from "intlTelInput"
于 2016-04-29T00:14:24.123 に答える