错误:找不到模块'jade〜'

Im新的节点js。 我用化合物Js来创build一个crud操作。

该应用程序工作正常,直到我试图提醒一个值,之后,我得到的错误

500 Error: Cannot find module 'jade~' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:362:17) at require (module.js:378:17) 

如何解决这个问题

我的索引

 #tabs ul li a(href='#tabs-1') New Leave li a(href='#tabs-2') Index of Leave #tabs-1 .page-header h1 New employee - var form = formFor(employee, {action: pathTo.employees(), method: 'POST', id: "employee_form", class: 'form-horizontal'}) != form.begin() != errorMessagesFor(employee) .control-group != form.label("code", false, {class: "control-label"}) .controls != form.input("code") .control-group != form.label("description", false, {class: "control-label"}) .controls != form.input("description") .control-group != form.label("applicable", false, {class: "control-label"}) .controls != form.input("applicable") .control-group != form.label("cForward", false, {class: "control-label"}) .controls != form.checkbox("cForward") .control-group != form.label("limit", false, {class: "control-label"}) .controls != form.checkbox("limit") .control-group != form.label("lop", false, {class: "control-label"}) .controls != form.checkbox("lop") .control-group != form.label("od", false, {class: "control-label"}) .controls != form.checkbox("od") .control-group != form.label("co", false, {class: "control-label"}) .controls != form.checkbox("co") .control-group != form.label("lrevision", false, {class: "control-label"}) .controls != form.checkbox("lrevision") .control-group != form.label("active", false, {class: "control-label"}) .controls != form.checkbox("active") .form-actions != form.submit('<i class="icon-ok icon-white"></i> Create employee', {class: 'btn btn-primary'}) span= ' or ' != linkTo('Cancel', pathTo.employees(), {class: 'btn'}) != form.end() #tabs-2 .page-header h1 Index of employees .row .span12 p != linkTo('<i class="icon-plus icon-white"></i> New employee', path_to.new_employee(), {class: 'btn btn-primary'}) - if (employees.length) { .row .span12 table.table.table-striped thead tr th ID th.span3 Actions tbody - employees.forEach(function (employee) { tr td != linkTo('employee #' + employee.id, path_to.employee(employee)) td != linkTo('<i class="icon-edit"></i> Edit', pathTo.edit_employee(employee), {class: 'btn btn-mini'}) + ' ' != linkTo('<i class="icon-remove icon-white"></i> Delete', pathTo.employee(employee), {class: 'btn btn-mini btn-danger', method: 'delete', remote: true, jsonp: '(function (u) {location.href = u;})'}) - }); - } else{ .row .span12 p.alert.alert-block.alert-info strong No employees were found. - } 

布局文件

 !!! 5 html head title= title != stylesheetLinkTag('http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/themes/base/jquery-ui.css', 'bootstrap', 'application', 'bootstrap-responsive') != javascriptIncludeTag('https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.js', 'rails', 'application') script $(document).ready(function() { $("#tabs").tabs(); }); != csrfMetaTag() body .navbar .navbar-inner .container a.brand(href='#') Project name .container - var flash = request.flash('info').pop(); if (flash) { .alert.alert-info= flash - } - flash = request.flash('error').pop(); if (flash) { .alert.alert-error= flash - } != body hr footer p © Company 2012 != contentFor('javascripts') 

我有同样的问题,但“找不到模块”玉“,而不是”玉〜“; 我很确定我已经做了“npm install jade”。 经过一段时间的研究,我发现我的问题是因为我在本地安装了翡翠的时候安装了express,参考这个帮助https://www.openshift.com/forums/express/nodejs-and-jade-error-cannot-发现模块玉我解决了我的问&#x9898;..我在这里发布它认为这可能会帮助一些其他人面对同样的问题,我:)

我在nodechool expressworks教程中遇到了同样的问题。 我通过在package.json中包含依赖来解决它:

npm安装 – 保存快捷翡翠

对我来说,这个问题原来是不一样的。 我已经安装了翡翠,并在本地和全球expression,希望他们能find对方,但还是表示抱怨玉。

我的错误是这样的:

 Express server listening on port 3000 Error: Cannot find module 'jade' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:364:17) at require (module.js:380:17) at new View (/Users/ajeetganga/node_modules/express/lib/view.js:43:49) at Function.app.render (/Users/ajeetganga/node_modules/express/lib/application.js:488:12) at ServerResponse.res.render (/Users/ajeetganga/node_modules/express/lib/response.js:798:7) at exports.index (/Users/ajeetganga/Documents/WORKSPACE/TinyUrl/MyTinyUrl2/routes/index.js:7:7) at callbacks (/Users/ajeetganga/node_modules/express/lib/router/index.js:164:37) at param (/Users/ajeetganga/node_modules/express/lib/router/index.js:138:11) 

如果你观察这一行:

 at new View (/Users/ajeetganga/node_modules/express/lib/view.js:43:49) 

你会看到,它不是全球或本地npm安装的默认位置。所以作为一个解决办法,我安装玉在下面的文件夹

 cd /Users/ajeetganga/node_modules/ npm install jade 

我认为,即使我已经从文件夹/ Users / ajeetganga /安装了jade,但从来没有尝试过。 🙂

The issue was with Fedora-16我正在研究。 编辑时创build的临时文件,即'index.jade〜'没有被清除,因此问题出现了。

这个问题可以在Fedora-16中解决,或者删除临时文件'index.jade〜'或者将节点模块'jade'重命名为 'jade〜 '

呃,你几乎可以肯定地require('jade~')有一个你想要的简单的错字require('jade') 。 检查你的快速app.engine('jade')线作为另一个可能的嫌疑犯。

在用Emacs编辑一个jade文件后,我得到了同样的问题。 解决方法很简单:findjade〜文件并将其删除。

我有同样的问题(我的打字稿+ webpack项目中的玉器加载器)。 我通过安装jade-loader作为peer-dependency来解决这个问题。