我是node.js的新手,想在一个html页面上显示一个简单的表格。这个表格应该用从mysql select中获取的数据填充(例如:select * from testtable)。
但我真的不知道该怎么做。对于有PHP背景的人来说,我该如何在nodejs中在HTML中显示一些SQL内容?我知道git mysql nodejs wiki,但它根本没有帮助,因为它只涉及到获取数据而不是在网页上显示数据。
在nodeJS中做这样的事情的最佳实践是什么?有没有易于理解的简单方法,还是我应该继续使用PHP?我真的很喜欢node.js的想法,但是开始就像爬滑坡一样困难。
我还买了一本关于它的书,但是这本书从来没有深入到express中(因为这将是太多的信息...)。所以我知道express、pug、serve-static,我能够提供一个简单的html。但仅此而已,没有CRUD或REST,而我花了50欧元却什么都没学到。
编辑: 我需要使用API吗?或者使用Angular.js可能是正确的方法吗?
编辑2:
C:\Users\user\node_test\CRUD2>node app.js
module.js:327
throw err;
^
Error: Cannot find module './routes'
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (C:\Users\user\node_test\CRUD2\app.js:2:14)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
编辑3:
C:\Users\user\node_test\CRUD2>node app.js
Express server listening on port 4300
C:\Users\user\node_test\CRUD2\routes\testtable.js:4
var query = connection.query('SELECT * FROM testtable',function(err,rows){
^
TypeError: Cannot read property 'query' of undefined
at C:\Users\user\node_test\CRUD2\routes\testtable.js:4:29
at C:\Users\user\node_test\CRUD2\node_modules\express-myconnection\lib\express-myconnection.js:87:41
at Pool.<anonymous> (C:\Users\user\node_test\CRUD2\node_modules\mysql\lib\Pool.js:47:16)
at Handshake.Sequence.end (C:\Users\user\node_test\CRUD2\node_modules\mysql\lib\protocol\sequences\Sequence.js:78:24)
at Handshake.ErrorPacket (C:\Users\user\node_test\CRUD2\node_modules\mysql\lib\protocol\sequences\Handshake.js:101:8)
at Protocol._parsePacket (C:\Users\user\node_test\CRUD2\node_modules\mysql\lib\protocol\Protocol.js:205:24)
at Parser.write (C:\Users\user\node_test\CRUD2\node_modules\mysql\lib\protocol\Parser.js:62:12)
at Protocol.write (C:\Users\user\node_test\CRUD2\node_modules\mysql\lib\protocol\Protocol.js:37:16)
at Socket.<anonymous> (C:\Users\user\node_test\CRUD2\node_modules\mysql\lib\Connection.js:73:28)
at emitOne (events.js:77:13)
var routes = require('./routes/testtable');
,但现在我得到了一个新的错误:“throw new Error('Most middleware (like ' + name + ') is no longer bundled with Express”。 - user3772108select * from db.testtable;
是有效的。我已经在testtable.js中将其更改为此查询语句,但仍然没有成功。服务器仍然崩溃。 - user3772108