使用 AngularJs 将 base64 格式的数据转换为图像

convert base64 formatted data to image using AngularJs

我正在尝试使用 AngularJs 将 base64 格式的数据转换为图像,但出现错误 如果你能帮助我如何做,我将不胜感激。

 $http({
        method: 'GET',
        url: '/Home/GetEmployeeDetail',
        params: { ID: $scope.PersonID }
    }).then(function (result) {
        $scope.TC = result.data.TC;
        $scope.Name = result.data.Name;
        $scope.LastName = result.data.LastName;
        $scope.DateOfBirth = new Date(result.data.DateOfBirth.match(/\d+/)[0] * 1);
        $scope.Email = result.data.Email;
        $scope.Address = result.data.Address;
        var base64 = result.data.Image;
        console.log(base64);
     
        var imgbase64 = atob(base64);
        console.log(imgbase64);
        var imglength = imgbase64.length;
        var arrayBuffer = new ArrayBuffer(imglength);
        var uintArray = new Uint8Array(arrayBuffer);
        for (var i = 0; i < imglength; i++) {
            uintArray[i] = imgbase64.charCodeAt(i);
        }
        $scope.img = uintArray;
 <div class="profile-images" style="width:90px ; height:90px">
                        <img ng-src="{{img}}" />
                    </div

您无需对 base64 字符串进行任何修改即可在 ng-src 中进行设置。查看以下插件:https://plnkr.co/edit/WwnZ7mEvDXynb9M3

直接从后端传字符串给ng-src即可

$http({
        method: 'GET',
        url: '/Home/GetEmployeeDetail',
        params: { ID: $scope.PersonID }
    }).then(function (result) {
        var base64 = result.data.Image;
  
        $scope.img = base64;