为了账号安全,请及时绑定邮箱和手机立即绑定

nodejs - 将数据(模块)从文件传递到 Jade

nodejs - 将数据(模块)从文件传递到 Jade

当年话下 2022-08-27 14:58:20
我正在开发一个类似于神奇宝贝对决的小型战斗模拟器。我正在使用express和pug(jade)来渲染html。这不是关于神奇宝贝,但如果你知道这个网站,你可能会得到一个更好的参考。我一直在检查其公共github存储库,但我对他们如何做事感到迷茫。我有一个模块,其数据类似于以下内容:// public/data.jsconst Units = {    "Swordsman": { ... }, // data of the Swordsman unit    "Healer": { ... }, // data of the Healer unit    ... // ~ 500 additional entries};export { Units as default };在客户端,我完全可以使用导入它。但是,在团队建设者中,我想通过哈巴狗/翡翠模板显示所有可用的单位:import Units from './data.js'- for (unit in Units)    li= unit.name如何将数据传递到模板?我在路由器上试过了:import Units from './data.js';router.get('/batallions', function(req, res, next) {  res.render('batallions', {    title: 'Batallions',    Units: Units  });});尝试了两个 和 ,但它给了我错误:import ... from ...require()(function (exports, require, module, __filename, __dirname) { import Units from './data.js';                                                                     ^^^^^SyntaxError: Unexpected identifier和:export { Units as default };^^^^^^SyntaxError: Unexpected token export当我在客户端导入它时,它可以完美地工作,但无法将其传递到模板以显示它。有没有办法做到这一点?我可以改用数据库,但我也需要客户端加载单位数据。提前致谢!
查看完整描述

1 回答

?
繁花不似锦

TA贡献1851条经验 获得超4个赞

尝试将语句写成:exportdata.js

module.exports = Units

然后在路由器上使用:require()

const Units = require('./data.js')


查看完整回答
反对 回复 2022-08-27
  • 1 回答
  • 0 关注
  • 73 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信