2017-08-02 168 views
0

我正在使用Angular Universal,Express和Webpack。我开始使用这个混帐回购协议的应用程序:错误:找不到模块“。”

https://github.com/FrozenPandaz/ng-universal-demo

我似乎无法在我的main.server.ts使用socket.io。我可以进口,但试图安装时,它起来,我得到一个错误:

... 
import * as express from 'express'; 
import * as socket from 'socket.io'; 

enableProdMode(); 
const app = express(); 
const server = require('http').Server(app); 
const io = socket(server); 
// .  ^^ causes error 

app.engine('html', ngExpressEngine({ 
    bootstrap: ServerAppModule 
})); 

app.set('view engine', 'html'); 
app.set('views', 'src'); 

app.use('/', express.static('dist', {index: false})); 

server.listen(1337); 

app.get('test', (req, res) => { 
    res.render('../dist/index', { 
    req: req, 
    res: res 
    }); 
}); 

io.on('connection', (socket) => { 
    socket.on('register', (data) => { 
    socket.join(data); 
    user = data; 
    }); 
}); 

该错误是因为socket(server)调用的发生,因为如果我评论了这一点的错误不会发生:

/Users/michaelwilson/Code/app/dist/server.js:101828 
    return /*require.resolve*/(!(function webpackMissingModule() { var e = new Error("Cannot find module \".\""); e.code = 'MODULE_NOT_FOUND'; throw e; }())); 
                                      ^

Error: Cannot find module "." 
    at webpackMissingModule (/Users/michaelwilson/Code/app/dist/server.js:101828:76) 
    at resolvePath (/Users/michaelwilson/Code/app/dist/server.js:101828:154) 
    at Server.serveClient (/Users/michaelwilson/Code/app/dist/server.js:101831:25) 
    at new Server (/Users/michaelwilson/Code/app/dist/server.js:101770:8) 
    at Server (/Users/michaelwilson/Code/app/dist/server.js:101762:41) 
    at Object.<anonymous> (/Users/michaelwilson/Code/app/dist/server.js:113993:10) 
    at __webpack_require__ (/Users/michaelwilson/Code/app/dist/server.js:26:30) 
    at /Users/michaelwilson/Code/app/dist/server.js:94:18 
    at Object.<anonymous> (/Users/michaelwilson/Code/app/dist/server.js:97:10) 
    at Module._compile (module.js:570:32) 
[nodemon] app crashed - waiting for file changes before starting... 

我不确定还有什么可以尝试的,这是Webpack + Socket.io的问题吗?我找不到任何人有同样的问题...

编辑:我已经找到了这个代码在socket.io库发生,其行试图做一个动态的决心:

return /*require.resolve*/(!(function webpackMissingModule() { var e = new Error("Cannot find module \".\""); e.code = 'MODULE_NOT_FOUND'; throw e; }())); 
+0

检查:https://stackoverflow.com/questions/34823655/webpack-missing-module-module-not-found 此外,请确保您已经安装了您正确引用的那些软件包(它们是否在package.json和node_modules文件夹中?) –

+0

@EdmundoRodrigues该错误与我所引用的任何模块无关,如果是这种情况,它将在socket.io本身内。但事实是“。”无法找到,似乎不是这种情况... –

回答