2017-09-26 2 views
2

이 내가 노드 내 노드 응용 프로그램을 시작 app.js 실행할 때이 그래서 내 app.jswebpack을 사용하여 nodejs 앱에 jquery를 포함시키는 방법은 무엇입니까?

var $ = require('jquery'); 
global.jQuery = $; 
global.$ = $; 
require('jquery'); 
console.log('Hello from Webpack'); 
$('#serviceContainer').hide(); 

내 webpack.config.js

var webpack = require("webpack"); 

module.exports = { 
    entry: './app.js', 
    output: { 
     filename: './bundle.js' 
    }, 
    module: { 
     loaders: [ 
      { 
       test: /\.js$/, 
       exclude: /node_modules/, 
       loader: 'babel-loader', 
       query: { 
        presets: ['es2015'] 
       } 
      } 
     ], 
    }, 
    plugins: [ 
     new webpack.ProvidePlugin({ 
      $: "jquery", 
      jQuery: "jquery" 
     }) 
    ] 
}; 

, 그것은 jQuery를 요구하고있다 아래 오류가 발생했습니다.

throw new Error("jQuery requires a window with a document"); 

그래서 webpack을 사용하여 nodejs에 jquery를 포함시키는 방법을 알아야합니다. 아무도 도움을 주시기 바랍니다. 미리 감사드립니다!

+1

왜 nodejs 응용 프로그램에서 jquery가 필요합니까? Nodejs는 jquery가 프론트 엔드에서 실행되는 백엔드에서 실행됩니다. 어떤 창 (브라우저 창)도 감지 할 수 없으므로이 오류가 발생합니다. –

답변

0
jQuery를 글로벌 컨텍스트에있을

JQuery와 수있는 JS 라이브러리입니다 동안 웹 응용 프로그램의 서버 측을 만들 수 있습니다 nodejs와

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

(창)

var $ = require('jquery'); 
window.jQuery = $; 
window.$ = $; 

ProviderPlugin 웹 페이지의 DOM을 조작하여 HTML 페이지에서 jquery를 사용해야합니다. 대신 서버 쪽에서 올바른 html 페이지를 클라이언트에 보내는 간단한 http 서버를 만들어야합니다.

+0

그래서 nodejs에서 올바르게 수행 할 수 없습니까? –

+0

수정하십시오. jquery로 무엇을하고 싶습니까? 어쩌면 너에게 맞는 또 다른 도서관이있을거야. –

관련 문제