在状态路由中从$ http请求加载模板URL

时间:2015-11-24 12:52:09

标签: angularjs angular-ui-router angular-ui angular-template

我想从$ http call加载templateurl。

$stateProvider
.state('home', {
        url: '/',
        templateUrl: will be served by $http call from server
    });

请建议我如何实现这一点。

5 个答案:

答案 0 :(得分:2)

我建议使用int recive(int socket){ ... received_message[offset] = '\0'; return 0; } 。这可能消耗任何数量的IoC参数(包括当前的$ stateParams)。结合$ templateRequest,我们还可以轻松地从服务器获取模板并保持缓存:

templateProvider

检查这些:

答案 1 :(得分:0)

作为templateUrl也可以是您可以轻松完成的功能:

$stateProvider.state('home', {
  templateUrl: function ($stateParams){
    $http....success({
      return <whatever> + '.html';
    })
  }
})

答案 2 :(得分:0)

您需要一个控制器从结果中填充模板,并绑定模板中的范围值。

 $stateProvider
.state('home', {
    url: '/',
    templateUrl: 'index.html',
    resolve {
        results:  function($http){
        return $http({method: 'GET', url: '/serverspi'})
           .then (function (data) {
               return process(data);
           });
     },   
   }
});

答案 3 :(得分:0)

Angular以最优雅的方式完成了它。如果你想调用你的后端控制器来请求一个jsp页面的模板,只需像这样调用$ http url

.state('inbox', {
        url: '/inbox',
        templateUrl:'jspController/inboxRecord',
        controller : 'inboxController'
    }) 

该url会在我的情况下使用jsp页面响应将要呈现的inboxrecord.jsp。

答案 4 :(得分:0)

我使用了templateProvider(https://github.com/angular-ui/ui-router/wiki)并检索了一个包含我的模板的JSON对象:

templateProvider: function($http) {
        return $http.get("http://example.com/returnJSONobject")
                .then(function(res) {
                    return res.htmlTemplate;
                });
},