【问题标题】:why $scope.logo is undefined in controller ?为什么 $scope.logo 在控制器中未定义?
【发布时间】:2017-05-25 20:30:13
【问题描述】:
这是我的 HTML 表单
<form ng-submit='create()'>
..
.
.
<input type='file' ng-model='logo' accept="image/*">
</form>
这是我的控制器:
$scope.create = function () {
$scope.Ent = {}
$scope.Ent.logo = $scope.logo;
【问题讨论】:
标签:
html
angularjs
node.js
【解决方案1】:
ng-model 在输入类型 'file.使用自定义指令绑定它
.directive("fileread", [function () {
return {
scope: {
fileread: "="
},
link: function (scope, element, attributes) {
element.bind("change", function (changeEvent) {
var reader = new FileReader();
reader.onload = function (loadEvent) {
scope.$apply(function () {
scope.fileread = loadEvent.target.result;
});
}
reader.readAsDataURL(changeEvent.target.files[0]);
});
}
}
}]);
将作用域变量分配给fileread属性
<form ng-submit='create()'>
..
.
.
<input type='file' fileread='logo' accept="image/*">
</form>