Я пытаюсь загрузить изображения как base64 в приложении Canvas с angular v1.5
<body ng-app="ThermalLabelWebEditor" ng-controller="Controller as main">
......
<label class="col-md-12">
Base64
<input class="form-control" type="file" id="file" accept="image/jpeg" />
<button class="btn btn-primary" ng-click="main.uploadImage()">Add Image</button>
<textarea id="vf_base64" required class="form-control"
ng-model="main.imageItem.source_base64">
</textarea>
</label>
Функция загрузки
var controller = app.controller("Controller", function ($http,$scope) {
........
this.imageItem = {};
this.uploadImage = function () {
var f = document.getElementById('file').files[0],
r = new FileReader();
r.readAsDataURL(f);
var me = this;
r.onloadend = function () {
var res = r.result.substring(23, r.result.length);
me.imageItem.source_base64 = res;
console.log(me.imageItem);
};
r.onerror = function (error) {
console.log(error);
me.imageItem.source_base64 = 'Error: ' + error;
};
};
Я вижу, что поле заполнено
{data_field: "", data_field_format_string: "", comments: "", print_as_graphic: false, x: 0.10431385040283203, …}
data_field: ""
....
source_base64: "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMTEhUUExMWFh"
sizing: 1
width: 2.7291666666666665
height: 2.5625
name_at_printer_storage: ""
Но в Textarea ничего не появляется