app.use(function(req, res, next) {
var chatlog = [];
console.log('executed many timews why?')
var chatlog = redisClient.lrange('messages', 0, 99, function(err, reply) {
if (!err) {
var result = [];
for (var msg in reply) result.push(JSON.parse(reply[msg]));
if (result.length == 0) {
result.push({
"msg": 'welcome',
"nickname": "guest1"
})
}
console.log(result)
} else {
console.log('error getting chat messages')
}
res.locals = {
chatlog: result
};
next();
return
});
app.get('/', (req, res) => {
res.render('index', { })
})
Run Code Online (Sandbox Code Playgroud)
当我访问'/'一次时,控制台会打印以下内容:
executed many timews why
[ { …Run Code Online (Sandbox Code Playgroud) 伙计们。我习惯在 NodeJS 中通过 require('library') 加载库。现在我负责一个非常重要的项目的前端,希望它能给我的生活带来我应得的幸福。
问题是没有人能够提供一种简单、随时可用的模块加载解决方案。
Webpack:对于开发来说不可靠。需要创建配置文件并阅读一堆东西,没有一个有好工作的人有时间这样做。糟糕的文档,看起来编辑文件时会给我带来困难(我在一个屏幕上有浏览器,在另一个屏幕上有文本编辑器,所以我编辑一行并按 f5 立即看到结果,似乎并不无需在 webpack 中进行额外的努力即可实现)
Browserify/RequireJS 都差不多,比较麻烦
为什么没有人能够在浏览器中复制 NodeJS 的“require”系统?我只想做 require('library') 并忘记它。没有未经请求的配置文件。无需额外工具。不说废话。只是。