2017-07-18 10 views
0

直接ダウンロード以外の方法でアセットを管理し、必要なファイルを指定されたフォルダにコピーし、単にこれを参照するのは全く新しいです。しかし、私は自分の資産を「フレームワークに近い」ものにしておきたいので、Laravelでどのように行われているかについてある程度分かりやすくしたいと考えています。Laravel Asset Management、インストールされたNPMライブラリの使い方(参照エラー)

私は甘いアラートライブラリを使用したいので、node_modulesディレクトリとpackage.json内のファイルを置い

npm install sweetalert 

がやったLaravelのV5.4およびNPMのV5.3.0

を使用しています予想どおり

これは混乱が始まるところです。私は、これは私のアプリにライブラリを縮小化/コンパイルだろうと考え

npm install --no-bin-links 

(ドキュメントにより、Windowsホストを推奨無ビン・リンクフラグ)

npm run dev 

をしました。 jsやvendor.js(これは存在しません)、少なくとも私はライブラリを利用できるようにいくつかの魔法を使っています。

出力状態:

DONE Compiled successfully in 8551ms 

私は単にこのプロセスで甘いアラートライブラリを含めることができなかったことを私に示唆しています。

PHPStormは、オートコンプリートオプションとしてライブラリを示唆していますが、アプリケーションは負荷にJSコンソールに述べ、ライブラリのロードに失敗:-ing私も「必要」試してみました

jQuery.Deferred exception: swal is not defined ReferenceError: swal is not defined 

述べbootstrap.jsでライブラリ、:

window.swal = require('sweetalert'); 

または単に

swal = require('sweetalert'); 

「SWE etalert 'はIDEのオートコンプリートで提案されています。ここで

は、私はそれを使用しようとした方法である:上記のエラーがスローされます

$(document).ready(function() { 
     alert("Hello!"); //works 
     swal({ 
      title: "Hello!", 
      text: "Hellooo", 
      type: "error", 
      confirmButtonText: "OK THEN" 
     }); 
    }); 

私も失敗

window.swal({... 
sweetAlert({... 

を使用して初期化してみました。

私には何が欠けていますか?そして、LaravelプロジェクトでNPMパッケージを使用する方法/ベストプラクティスは何ですか?

ご協力いただきまして誠にありがとうございます。

答えて

0

webpack.js設定ファイルにsweetalertベンダーファイルへの参照を追加する必要があります。

あなたが

npm run dev 
を実行したときに、あなたのパブリックフォルダにベンダーのフォルダからコピーします
mix.scripts('/vendor/..../sweetalert2.min.js', '/public/js/sweetalert.min.js'); 

関連する問題