文章详情页
javascript - node.js不同模块之间如何传值
浏览:163日期:2023-09-24 17:57:09
问题描述
data.js(获取一个json,console出来正确)

通过exports传到index.js里,再传到index.jade模板里,结果发现这个getdata是一个空对象。导致title也是空对象,如果getdata.title的话则显示undefined,把json转换成字符串也是空串,这是什么原因?是不是异步io导致的。
问题解答
回答1:提供个思路 promise 或者 callback (回调函数)
回答2:exports=json,exports现在是json这个对象的引用,不再是module.exports的引用了,所以json并没有挂到module.exports上,所以你要么是module.exports=json,然后require或者exports.json=json然后获取这个模块require的对象的属性json的值
回答3:可以把data.js封装成一个模块,然后render方法作为回调执行;或者用promise的方式,在then逻辑中执行render方法。你现在这种写法无法获取异步中的值,其次你导出json的方式不对,module.exports=json.
标签:
JavaScript
相关文章:
1. MySQL的SELECT...FOR UPDATE究竟起什么作用2. css - 移动端 line-height安卓错位,苹果机正常用,缩放解决了,可是又出来了占位的问题3. pdo_mysql 值自增写法4. javascript - js对象 属性的访问和创建5. javascript - 右列定宽,左列自适应且有最小宽度6. java - 显示的时间能不能去掉毫秒7. mysql主从,从库锁表会导致复制阻塞吗?8. c++ - win764位环境下,我用GCC为什么指针占8个字节,而long是4个字节?9. windows-7 - win7下使用cmder,如何设置vim的tab为4个空格?10. javascript - node内存溢出问题
排行榜

网公网安备