Angular JS在页面加载示例上休息获取调用请求

时间:2016-04-25 14:08:46

标签: angularjs

我是AngularJS的新人。我需要调用http get方法在页面加载之前到达nodejs。谁能给我一个样例?

HTML:

<body onLoad="loadData()>

</body>

AngularJs:

$scope.loadData =function($scope,http) {
// Need to know how to call the "/getcustomers" some url to hit the rest call here
//Already the route part is configured by someone
}

4 个答案:

答案 0 :(得分:0)

可能会有所帮助;

  private void btnSaveImg_Click(object sender, RoutedEventArgs e)
    {

        string filePath = @"C:\Users\xxx\Desktop\image.png";

        SaveToPng(qrImg, filePath);
    }

    void SaveToBmp(FrameworkElement visual, string fileName)
    {
        var encoder = new BmpBitmapEncoder();
        SaveUsingEncoder(visual, fileName, encoder);
    }

    void SaveToPng(FrameworkElement visual, string fileName)
    {
        var encoder = new PngBitmapEncoder();
        SaveUsingEncoder(visual, fileName, encoder);
    }

    // and so on for other encoders (if you want)


    void SaveUsingEncoder(FrameworkElement visual, string fileName, BitmapEncoder encoder)
    {
        RenderTargetBitmap bitmap = new RenderTargetBitmap((int)visual.ActualWidth, (int)visual.ActualHeight, 96, 96, PixelFormats.Pbgra32);
        bitmap.Render(visual);
        BitmapFrame frame = BitmapFrame.Create(bitmap);
        encoder.Frames.Add(frame);

        using (var stream = File.Create(fileName))
        {
            encoder.Save(stream);
        }
    }

答案 1 :(得分:0)

您可以使用ng-init

例如:

<body ng-init="loadData()">

</body>

答案 2 :(得分:0)

这是一个简单的角度应用,可以在其上发送http请求,请注意角度应用onload中几乎没有使用,

HTML:

<body ng-app='app' ng-controller='ctrl'></body>

的javascript:

angular.module('app', [])
    .controller('ctrl', function($scope, $http){
         $scope.customers = [];

         $scope.loadData = function(){
              $http.get('rootUrl/getCustomers').then(function(data){
                   $scope.customers = data;
              })
         }

         //call loadData when controller initialized
         $scope.loadData();
    })

答案 3 :(得分:0)

您可以使用路由器(https://docs.angularjs.org/api/ngComponentRouter)。 在路由声明中,您可以通过promises方法设置解析对象,该对象描述您在前进之前应该获得的数据。 你应该这样做:

    [HttpGet]
    [Route("api/app/GetSignalRTest")]
    public IHttpActionResult GetSignalRTest()
    {
     var context = GlobalHost.ConnectionManager.GetHubContext<AppHub>();
     context.Clients.All.hello();  
     return Ok();
    }

并且在控制器依赖项注入中,您可以按名称获取它,您可以在解析对象中确定它。 这样做,你会在页面开始渲染之前获取数据