javascript - 从数据库中获取数据并在 AngularJS 的 ng-repeat 中使用它

标签 javascript mysql angularjs angularjs-ng-repeat

在 AngularJS 中,您可以使用 ng-repeat 将列表的每个组件显示为 HTML:

<div ng-app>
    <div ng-controller="myctrl">
        <div ng-repeat="row in lists">
            <p>{{row.first}}</p>
            <p>{{row.last}}</p>
        </div>
    </div>
</div>

但是,在上面的代码中,您必须先编写一个列表的每个组件,在上面的 HTML 中使用它之前,应该手动从数据库中获取它们。那么有没有什么办法可以直接在Node.js和Express中从MySQL中获取数据渲染成.ejs文件,然后在AngularJS中使用渲染后的列表呢?

最佳答案

Angular 在客户端运行,而 Node 在服务器端运行。该代码实际上并没有一起运行。如果需要,您可以使用 ajax 获取数据:

// `lists` is returned as JSON
$http({url: url}).success(function (lists) {
    $scope.lists = lists;
});

您可以在不重新加载页面的情况下执行此操作。但是,如果数据已经需要通过脚本的服务器端运行来查询和加载,那么使用 Angular 打印列表本身就没有任何好处。相反,您可以直接将其打印为 HTML 的一部分。

关于javascript - 从数据库中获取数据并在 AngularJS 的 ng-repeat 中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19792290/

相关文章:

javascript - 将参数从 html 传递到 jquery

javascript - 使用 Knockout JS 将多个不同的 JSON 源映射到一个 View 模型

mysql - libmysqlclient_r.so.16.0.0 中的错误 4

angularjs - 使用 angularjs 的地理编码服务

javascript - Promise AngularJS 遇到麻烦...控制台日志无法处理 http 请求

php - 防止类为 'sub-menu' 的 ul 元素成为 Wordpress 菜单中列表项的子元素

mysql - 如何将 1 个包含 10 个 varchar 的列分成 10 列,每个列包含 1 个 varchar?

php - mysql中查询的长度有限制吗?

angularjs - Angular - 不同的路由,相同的模板/ Controller ,不同的加载方法

javascript - 为面添加厚度