2016-10-08 14 views
0

jQueryでAngular 2を使用していて、うまくいきます。私はjQueryの作業を取得するためのWebPACKを使用角度2 - jqueryで外部ライブラリを使用する

関数ではありません

のjQuery(...)石工():私はmasonry-layoutようないくつかの外部ライブラリを使用したいのですが、私は問題を抱えています。 。

new ProvidePlugin({ 
    jQuery: 'jquery', 
    $: 'jquery', 
    jquery: 'jquery', 
    }) 

test.component.ts

import { Component } from '@angular/core'; 

import 'masonry-layout'; 

@Component({ 
    selector: 'test', 
    template: ` 
     <div class="container-fluid grid"> 
      <div class="grid-item">...</div> 
      <div class="grid-item">...</div> 
      <div class="grid-item">...</div> 
      <div class="grid-item">...</div> 
     </div> 
    ` 
}) 
export class TestComponent { 
    ngOnInit() { 
     jQuery('.grid').masonry(); 
    } 
} 

任意の提案?ありがとう!

答えて

0

まずあなたがあなたのインポートを変更する必要があります。

import 'masonry-layout/dist/masonry.pkgd'; 

構成の変更は、このライブラリのために動作しないようです。

new webpack.ProvidePlugin({ 
    jQuery: 'jquery', 
    $: 'jquery', 
    jquery: 'jquery', 
    'window.jQuery': 'jquery' <== this line 
}), 

enter image description here だから、あなたは次のことを試すことができます。

window.jQuery = jQuery; 
import 'masonry-layout/dist/masonry.pkgd'; 
関連する問題