2017-02-23 9 views
-1

を宣言するとき、私は私のプロジェクトをビルドするためのWebPACKを使用していますが、私は以下のようなAJAX呼び出し機能を宣言するときに問題がある:エラー私はAjaxの機能

<script> 
    var self = this; 

    login(){ 
     $.ajax({ 
      url: '/feedback', 
      type: 'POST', 
      data: params, 
      success: function(res){ 
       if(res == 'OK'){ 
        alert("Received your message. We shall get back to your shortly."); 
       } 
      }, 
      error: function(err){ 
       console.log('error: ', err); 
      }; 
     }) 
    } 
</script> 

私はエラーを取得する:

ERROR in ./public_html/tags/login_tag.tag 
Module parse failed: E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\riotjs-loader\index.js?{}!E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\public_html\tags\login_tag.tag Unexpected token (16:17) 
You may need an appropriate loader to handle this file type. 
SyntaxError: Unexpected token (16:17) 
    at Parser.pp$4.raise (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:2221:15) 
    at Parser.pp.unexpected (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:603:10) 
    at Parser.pp.expect (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:597:28) 
    at Parser.pp$3.parseObj (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1973:16) 
    at Parser.pp$3.parseExprAtom (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1805:19) 
    at Parser.pp$3.parseExprSubscripts (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1715:21) 
    at Parser.pp$3.parseMaybeUnary (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1692:19) 
    at Parser.pp$3.parseExprOps (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1637:21) 
    at Parser.pp$3.parseMaybeConditional (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1620:21) 
    at Parser.pp$3.parseMaybeAssign (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1597:21) 
    at Parser.pp$3.parseExprList (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:2165:22) 
    at Parser.pp$3.parseSubscripts (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1741:35) 
    at Parser.pp$3.parseExprSubscripts (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1718:17) 
    at Parser.pp$3.parseMaybeUnary (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1692:19) 
    at Parser.pp$3.parseExprOps (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1637:21) 
    at Parser.pp$3.parseMaybeConditional (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1620:21) 
    at Parser.pp$3.parseMaybeAssign (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1597:21) 
    at Parser.pp$3.parseExpression (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1573:21) 
    at Parser.pp$1.parseStatement (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:727:47) 
    at Parser.pp$1.parseBlock (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:981:25) 
    at Parser.pp$3.parseFunctionBody (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:2105:24) 
    at Parser.pp$1.parseFunction (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1065:10) 
    at Parser.pp$3.parseExprAtom (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1810:19) 
    at Parser.pp$3.parseExprSubscripts (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1715:21) 
    at Parser.pp$3.parseMaybeUnary (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1692:19) 
    at Parser.pp$3.parseExprOps (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1637:21) 
    at Parser.pp$3.parseMaybeConditional (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1620:21) 
    at Parser.pp$3.parseMaybeAssign (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1597:21) 
    at Parser.pp$3.parseMaybeAssign (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1608:25) 
    at Parser.pp$3.parseExpression (E:\WORKSPACE\NETBEANS_WORKSPACE\Mantra_Pushpam\node_modules\acorn\dist\acorn.js:1573:21) 
@ ./index.js 7:0-43 

注:私はAjaxの機能を削除すると、エラーがすべて

ではありません。これは私のWebPACKの設定です:

var path = require('path'); 
var webpack = require('webpack'); 
module.exports = { 
    entry: './index.js', 
    output: { 
     path: __dirname, 
     filename: 'public_html/js/bundle.js' 
    }, 
    resolveLoader: { 
     root: path.join(__dirname, 'node_modules') 
    }, 

    module: { 
     preLoaders: [{ 
      test: /\.tag$/, 
      exclude: /node_modules/, 
      loader: 'riotjs-loader', 
      query: { 
       //type: 'none' 
       //compact: true 
      } 
     }], 
     loaders: [ 
      /*{ 
       test: /\.tag$/, 
       loader: 'tag', 
       exclude: /node_modules/ 
      },*/ 
      { 
       test: /\.js$/, 
       loader: 'babel-loader', 
       exclude: /node_modules/, 
       query: { 
        //commenting because of this issue https://github.com/mapbox/mapbox-gl-js/issues/3422 
        // presets: ['es2015'] 
       } 
      } 
     ] 
    }, 
    plugins: [ 
     new webpack.optimize.OccurenceOrderPlugin(), 
     new webpack.ProvidePlugin({ 
      riot: 'riot', 
     }) 
    ] 
}; 
+0

可能な重複:[あなたはこのファイルタイプを処理するために、適切なローダーが必要な場合があります](HTTP: //stackoverflow.com/questions/33469929/you-may-need-an-appropriate-loader-to-handle-this-file-type-with-webpack-and-b) –

+0

@TânNguyễnハンドラ。私の他のプロジェクトでも同じ設定がうまくいきます。 – kittu

+0

'login(){' < - それは何ですか?あなたは文法エラーの束を持っています – epascarello

答えて

4

それは私が推測するものだthere--あなたは、いくつかの不正な形式のJSを持っているが、あなたの問題です:

var self = this; 

login(){ // <== WHAT'S HAPPENING HERE? IS LOGIN SUPPOSED TO BE A FUNCTION DECLARATION? 
    $.ajax({ 
     url: '/feedback', 
     type: 'POST', 
     data: params, // LESS CRITICAL, BUT I DON'T SEE params DEFINED ANYWHERE 
     success: function(res){ 
      if(res == 'OK'){ 
       alert("Received your message. We shall get back to your shortly."); 
      } 
     }, 
     error: function(err){ 
      console.log('error: ', err); 
     }; // <-- THERE SHOULDN'T BE A SEMICOLON HERE!!!! 
    }) 
} // <== THERE *MIGHT* NEED TO BE A SEMICOLON HERE, DEPENDING ON WHAT YOU'RE TRYING TO DO 
+0

これはes6構文です。それは問題ではありません – kittu

+1

@kittu:オブジェクト初期化子またはクラス内でのみ、スタンドアロンではありません。ここであなたが持っているのは、* login *を呼び出す試みです。続いて、あなたのajaxコードを含むスタンドアロンのブロックが続きます。問題は、指摘されたセミコロンが指摘されていることです。 –

+0

あなたのWebpackがそれを変換している場合、またはブラウザがそれを処理できる場合は問題ありません。しかし、 'ajax'メソッドに渡された設定ではセミコロンではないはずです。 –