나는에 의해 노드 모듈로 select2
을 다운로드 한webpack에서 select2를 사용하는 방법은 무엇입니까? 내 <code>app.js</code>에서 그것을</p> <pre><code>npm install select2 </code></pre> <p>및 포함 :
require('select2')($);
내가 오류가없는
webpack
를 실행할 수 있지만 때 나는 응용 프로그램을 열 때 내가 얻을 :
Uncaught TypeError: Object.defineProperty called on non-object(…)
에서 오는:
S2.define('select2/core',[
'jquery',
'./options',
'./utils',
'./keys'
], function ($, Options, Utils, KEYS) {
(...)
}
select2
에 대한 모듈 래퍼 AMD에서만 작동하고 CommonJS와 호환되지 않기 때문에이 발생합니까?
물론 나는 jquery를 가지고 있었고, 나는 그것을 언급하는 것이 너무 명백하다고 생각했다. 문제는 일부 jquery 플러그인이 UMD에 포장되어 있습니다.이 어댑터는 AMD, CommonJS 또는 none을 사용하면 Webpack에서이 체크가 깨집니다. Webpack은 둘 다 지원하기 때문에 UMD 랩퍼는 commonJS를 사용하더라도 AMD를 사용한다고 가정합니다. # 4에서 허용 된 답변에서이를 위해 해킹 된 [해결 방법] (http://stackoverflow.com/questions/28969861/managing-jquery-plugin-dependency-in-webpack)이 있습니다. –