【问题标题】:How to Get Data From DB with angular如何使用角度从数据库中获取数据
【发布时间】:2020-01-03 19:27:36
【问题描述】:

我有一个作为 Angular 项目创建的前端网站。 (使用node.js)我创建了一个“server.ts”文件并成功连接到我的数据库。现在我想从我的数据库中获取数据并在仪表板上打印一些。如何获取数据?

var mysql = require('mysql');
var con = mysql.createConnection({

host: "myhost",
user: "myusername",
password: "mypassword"
});
con.connect(function(err){
if (err) throw err;
console.log("Connected!");
});

【问题讨论】:

    标签: node.js angular typescript http


    【解决方案1】:

    来自 Github 上的 lib README

    var mysql      = require('mysql');
    var connection = mysql.createConnection({
      host     : 'localhost',
      user     : 'me',
      password : 'secret',
      database : 'my_db'
    });
    
    connection.connect();
    
    connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
      if (error) throw error;
      console.log('The solution is: ', results[0].solution);
    });
    
    connection.end();
    

    例如,您可以使用.query() 来触发请求和获取数据。

    【讨论】:

      【解决方案2】:

      您无法在 Angular 应用程序中从数据库中获取数据。 Angular 是一个前端框架,这意味着您的 Angular 应用程序将被下载并在用户的浏览器中执行。 要从服务器端的数据库访问数据,您需要一个后端应用程序。您可以借助 mysqljs 之类的框架从 node.js 应用程序中执行此操作。 这个video中有一个例子

      【讨论】:

      • 没有错,但也不对。当然,前端应用程序可以从后端接收数据……例如使用 REST。后端公开一些访问点供前端使用。
      【解决方案3】:

      您需要为前端应用程序创建某种 api 以与后端服务器进行通信。一个常见的选项是Express。这涉及到相当多的代码,所以如果您需要具体的帮助,我建议您整理一下 stackblitz,或者您可能对以下示例感兴趣:

      https://morioh.com/p/33d0377536a6/angular7-crud-with-nodejs-and-mysql-example

      如果您想要一个更完整的解决方案,您还可以考虑实施一个工具系统,例如Prisma

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-11-02
        • 2018-11-09
        • 2020-01-16
        • 2011-11-06
        • 2020-06-14
        • 2017-07-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多