7

node.jsでアプリを作成していますが、最近、すべてのプロジェクトで予期しないエラーが発生しました。

ブラウザでモデルを呼び出そうとすると、常に

SyntaxError: Unexpected identifier

私のコードで呼び出された関数について。

たとえば、「/ session / new」に進むと、

私のコードは:

app.get('/session/new',function (req,res) {
    res.render('sessions/new',{locals:{
        redir:req.query.redir
    }});
});

エラーが発生します

SyntaxError: Unexpected identifier
at Object.Function (unknown source)
at Object.render (/usr/local/lib/node/.npm/jade/0.6.3/package/lib/jade.js:267:14)
at ServerResponse.render (/usr/local/lib/node/.npm/express/1.0.7/package/lib/express/view.js:334:22)
at ServerResponse.render (/usr/local/lib/node/.npm/express/1.0.7/package/lib/express/view.js:344:10)
at Object.<anonymous> (/Users/geraudmathe/Desktop/nodemongo/app.js:133:6)
at param (/usr/local/lib/node/.npm/connect/0.5.2/package/lib/connect/middleware/router.js:145:21)
at pass (/usr/local/lib/node/.npm/connect/0.5.2/package/lib/connect/middleware/router.js:161:10)
at Object.router [as handle] (/usr/local/lib/node/.npm/connect/0.5.2/package/lib/connect/middleware/router.js:167:6)
at next (/usr/local/lib/node/.npm/connect/0.5.2/package/lib/connect/index.js:232:23)
at next (/usr/local/lib/node/.npm/connect/0.5.2/package/lib/connect/index.js:234:17)

ここで、/ nodemongo / app.js:133:6は私のコードのres.renderです。

それは私がどんなコードを呼んでも起こります。

道に迷いました ...

4

4 に答える 4

15

この問題はさまざまな問題の合計であることがわかりました。たとえば、jade テンプレート呼び出しでサポートされていない属性がある可能性があります。

<img src="something.jpg" rel="prettyPhoto" />

これを見つけるのに永遠に時間がかかりました。これを行う唯一の方法は、res.render で呼び出している jade テンプレート ファイルからコードの塊を取り出し始めることです。

頑張ってください、このエラーは多くの可能性があります。

更新: http://groups.google.com/group/express-js/browse_thread/thread/b9acfc80f6acb63b?pli=1

jade index.jadeファイルのデバッグに使用できます

于 2011-09-06T20:01:15.340 に答える
3

私の場合、それは構文の問題でした

私が持っていた:

input.search-query(placeholder="Search" type="text")

あるべきだった

input.search-query(placeholder="Search", type="text")
于 2012-10-03T13:28:57.520 に答える
0

私の場合、この行の最後のバックスラッシュを削除することで問題は解決しました...

<a href="" onclick="window.open(\'http://www.facebook.com/' + friend.uid + '\');">
于 2012-01-05T17:37:15.873 に答える
0

いずれかのscriptまたはstyleタグで、必ずそれらをscript.andに変更してくださいstyle.

ジェイドの更新によると、あなたはそれをしなければなりません。Git リポジトリでそれを読むまで、Google アナリティクスのコードに問題がありました

例:

script.
            (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
            (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
            })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

            ga('create', 'UA-11111111-1', 'yourdomain.com');
            ga('send', 'pageview');

間隔などが実際にあなたのものから1スペースインデントされていることを確認してください

于 2014-01-20T05:14:22.430 に答える