创建指令时找不到NgModel

时间:2017-05-31 10:18:31

标签: angularjs

这是我的指令fileUpload,用于验证图像扩展。我没有得到这里缺少的东西。 (找不到指令'fileUpload'所需的所需控制器控制器'ngModel'!)如果有人可以查看这个,请不要这样做。

我发现很多人提到了同样的问题,但没有运气。请不要将此标记为重复问题。

$singleProduct = get_field('single_product');

if ($singleProduct->ID) : 
    $tabs = 'How do I get the tabs of this product???';
endif;

输入:

      App.directive('fileUpload', function () {
            return {
                scope: true,        //create a new scope
                require: 'ngModel',
                link: function (scope, el, attrs,ctrl) {
                    ctrl.$validators.images = function(modelValue, viewValue) {
                        console.log(modelValue);
                        console.log(viewValue);

                      };
                    ngModel.$setValidity('extension', true);
                    el.bind('change', function (event) {
                        var files = event.target.files;
                        var validFormats = ['jpg', 'jpeg', 'png', 'gif'];
                        var validSize = 500000;
                        for (var i = 0;i<files.length;i++) {
                            var ext = files[i].name.split('.');
                            var size = files[i].size;
                            if (ext !== undefined) {
                                var isExist = validFormats.indexOf(ext[1].toLowerCase()) >= 0 ? 1 : 0;
                                if (isExist == true && validSize >= (size)) {
                                    ngModel.$setValidity('extension', true);
                                } else {
                                    ngModel.$setValidity('extension', false);
                                }
                            }
                            //emit event upward
                            scope.$emit("fileSelected", { file: files[i] });
                        }                                       
                    });
                }
            };
        });

0 个答案:

没有答案