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

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

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

Yarnは、Facebook/Exponent/Google/Tildeが開発したJavaScriptのパッケージマネージャ。npmよりもインストールが速く、厳密にモジュールのバージョンを固定できるなど、npmの問題を解決。npmと互換性があり、同じpackage.jsonを使用できます。

jQuery UI

jQuery UI はjQuery公式のインターフェースライブラリであり、対話型のウェブアプリケーションを作る際に役立ちます。

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

1回答

1162閲覧

rails6/webpackにてjQuery File Upload​ プラグインを使用したい

pecchan

総合スコア555

Yarn

Yarnは、Facebook/Exponent/Google/Tildeが開発したJavaScriptのパッケージマネージャ。npmよりもインストールが速く、厳密にモジュールのバージョンを固定できるなど、npmの問題を解決。npmと互換性があり、同じpackage.jsonを使用できます。

jQuery UI

jQuery UI はjQuery公式のインターフェースライブラリであり、対話型のウェブアプリケーションを作る際に役立ちます。

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2021/06/17 23:26

編集2021/06/17 23:40

rails6.1.0です。

フロント側でjQuery File Upload​を使う必要があり、
jQueryプラグインをインストールしましたがエラーを解消できずにいます。

手順としては、
・jQuery と jQueryUIをインストール
・jquery.ui.widget.js と z.jquery.fileupload.js の2つのjsファイルを利用

という流れのようです。それは以下を参考にしました。

参考にしたサイト
Rails での S3 への画像の直接アップロード
rails6 webpacker で jquery-ui

・jQuery本体とjQueryUIはyarnでインストールしました。
・jquery.ui.widget.js と z.jquery.fileupload.jsは、app\javascriptに配置しました。

app\javascript\packs\application.js

ruby

1// jquery 2var jQuery = require('jquery') 3global.$ = global.jQuery = jQuery; 4window.$ = window.jQuery = jQuery; 5 6require ('jquery-ui') 7require ('jquery.ui.widget') 8require ('z.jquery.fileupload')

この状態で確認するとconsoleに以下のエラーが出ます。
jquery.ui.widget.jsの中で./version.jsを読めないというエラー?でしょうか。

jquery.ui.widget.js:20 Uncaught Error: Cannot find module './version' at webpackMissingModule (jquery.ui.widget.js:20) at jquery.ui.widget.js:20 at Object../app/javascript/jquery.ui.widget.js (jquery.ui.widget.js:26) at __webpack_require__ (bootstrap:19) at Module.<anonymous> (application.js:57) at Module../app/javascript/packs/application.js (application.js:62) at __webpack_require__ (bootstrap:19) at bootstrap:83 at bootstrap:83

###試したこと
environment.jsに追加してみました。
コメントで囲ってるのが追加した部分です。

\config\webpack\environment.js

ruby

1const { environment } = require('@rails/webpacker') 2 3 4const webpack = require('webpack') 5environment.plugins.prepend('Provide', 6 new webpack.ProvidePlugin({ 7 $: 'jquery/src/jquery', 8 jQuery: 'jquery/src/jquery' 9 }) 10) 11 12 13//jQueryUI追加ここから 14environment.toWebpackConfig().merge({ 15 resolve: { 16 alias: { 17 'jquery-ui': 'jquery-ui/ui/widgets' 18 } 19 } 20}); 21//jQueryUIここまで 22 23module.exports = environment 24

そうするとエラーの行が変わりました。
application.jsの、「require ('jquery-ui')」
の行でエラーに変わりました。

application.js:56 Uncaught Error: Cannot find module 'jquery-ui' at webpackMissingModule (application.js:56) at Module.<anonymous> (application.js:56) at Module../app/javascript/packs/application.js (application.js:62) at __webpack_require__ (bootstrap:19) at bootstrap:83 at bootstrap:83

試しにこの行をコメントアウトしました。

//require ('jquery-ui')

そうすると最初のエラーに戻っちゃいました。

jquery.ui.widget.js:20 Uncaught Error: Cannot find module './version' at webpackMissingModule (jquery.ui.widget.js:20) at jquery.ui.widget.js:20 at Object../app/javascript/jquery.ui.widget.js (jquery.ui.widget.js:26) at __webpack_require__ (bootstrap:19) at Module.<anonymous> (application.js:57) at Module../app/javascript/packs/application.js (application.js:62) at __webpack_require__ (bootstrap:19) at bootstrap:83 at bootstrap:83

webpackやjQueryの経験がなくこれ以上分かりません。
どうすればjsファイルを正常に読み込みプラグインを利用出来るようになるでしょうか?

先輩方教えて下さい。宜しくお願い致します。

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

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

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

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

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

guest

回答1

0

自己解決

fileuploadプラグインもyarnで入れました!

投稿2021/06/18 23:57

pecchan

総合スコア555

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問