2017-07-21 4 views
0

が、私はこれを実装しようとした仕事を得ることができない:私はSPAを作っていないです次のチュートリアルでは、サードパーティのjQueryプラグインSELECT2が

https://vuejs.org/v2/examples/select2.html

、私は私のページにVueのコンポーネントを使用しておりますが。

<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script> 
<script src="{{ asset('js/content_type_blocks.js') }}?{{ str_random(7) }}"></script> 

私は得るか、なぜ私は疑問に思う:私はSELECT2とhtmlファイルの私のvuejsの両方を含んで

Error in mounted hook: "TypeError: $(...).select2 is not a function" 

found in <Select2> at 
C:\laragon\www\lara\resources\assets\js\components\ui\Select2.vue 

このエラーが出る

で見つかった

[Vue warn]: Error in mounted hook: "TypeError: $(...).select2 is not a function"

select2は関数ではないというエラー?

+3

あなたが同様にjQueryを含めましたか? – Bert

+2

jQueryのようなサウンドが読み込まれません。コンソールに '$'や 'jQuery'と入力するとどうなりますか? – Terry

+0

はい私もそれを含めます。私は別のjqueryプラグインのcolorpickerを使用していますが、package.jsonファイルに "bootstrap-colorpicker": "^ 2.5.0"を入れてからアプリケーション内でコンポーネントとしてインポートすると、 .vueを使って 'bootstrap-colorpicker'からBootstrapColorPickerをインポートして、そのプラグインを使用することができました。しかし、私はcolorpickerで行ったようにselect2をpackage.jsonにインストールする方法を見つけることができません。なぜなら、select2はノードパッケージ –

答えて

2

Select2プラグインの初期化時に、jqueryがまだグローバルスタックにロードされていませんでした。


は、いくつかのソリューションを提案している。私はもっと優しいSelectize.jsを使用するように助言する

  • ちょうどNPM npm install --save select2経由Selectセレクトを追加し
  • それをインポートする。また、すぐに使用することはありVue-コンポーネントvue2-selectize。また、plsはこの性能試験を見て:https://jsperf.com/chosen-select2-selectize
  • あなたはVueのために特別に書かれた同様のソリューションを使用しようとすることができます:https://github.com/monterail/vue-multiselect
関連する問題