javascript - 从数据库获取配置设置以在 Angular 中跨应用程序共享

标签 javascript php angularjs slim

我正在尝试找出从数据库表中检索配置设置并在我的应用程序中使用这些设置的最佳实践方法。我正在使用 PHP Slim 来实现 RESTful API。我不确定哪个更好?使用 $rootScope 或服务,以及实现它的最佳方法?

使用 SLIM 的示例。如果我想要配置表的所有字段,我可以在 Controller 中运行它:

Data.get('config').then(function(data){
    configs = data.data;
});

目前我有一项服务,但它不起作用:

app.factory('dataShare', function($rootScope, $log, $http, Data) {

  var configs = {};

  Data.get('config').then(function(data){
    configs = data.data;
  });

  return configs;

});

我需要能够在我的 postCtrl 中获取这些字段。

最佳答案

我对之前的答案进行了一些更改,包括显示应该如何调用打印输出,因为我们正在将异步行为继续到 Controller 中。

  app.factory('dataShare', function($rootScope, $q, $log, $http, Data) {

      var configs= {};
      configs.getconfigs=function(){
          var deferred = $q.defer();
          Data.get('config').then(function(data){
            deferred.resolve(data.data);
          });
          return deferred.promise;
      }



    return configs;
    });

只要您注入(inject)了 q 并且该 Controller 控制的页面具有

,就应该能够在您的 Controller 内部调用它
<script src= "https://cdnjs.cloudflare.com/ajax/libs/q.js/2.0.3/q.min.js"></script>

然后调用这个。

dataShare.getconfigs().then(function(data){
    console.log(data);
});

关于javascript - 从数据库获取配置设置以在 Angular 中跨应用程序共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36753101/

相关文章:

javascript - 删除 Div 标签的正则表达式

javascript - 将 Javascript 对象添加到另一个 Javascript 对象中

php - MySQL JOIN 仅返回多行中的 1 行

php - PHP 中的数组差异实现

javascript - 测试 $routeChangeError 无法设置参数

javascript - 如何在某些 Javascript 部分更改 body 元素的背景颜色?

javascript - Windows 8 WinJS 应用程序中的应用程序启动是否有唯一的 session ID?

php - Linux 的 cron 是异步的还是同步的?

javascript - 非异步路径返回什么?

javascript - Angularjs 中的日期选择器值转换为字符串