2

我想在没有 jQuery 的情况下编写这个指令。

受这个SO question的启发,我试图在不需要它的地方或者我可以用另一种方式做的地方摆脱 jquery。. .

 MyApp.directive('myCamera', function () {
    return {
        restrict: 'A',
        require: 'ngModel',
        link: function(scope, element, attrs, ctrl) {
            element.on('click', function() {
                navigator.camera.getPicture(function (imageURI)
                {
                    scope.$apply(function() {
                        ctrl.$setViewValue(imageURI);
                    });
                }, function (err) {
                    ctrl.$setValidity('error', false);
                },
                //Options => http://docs.phonegap.com/en/2.6.0/cordova_camera_camera.md.html#Camera
                { quality: 50,
                  destinationType: Camera.DestinationType.FILE_URI
                })
            });
        }
    };
});

谢谢!

4

1 回答 1

3

要删除对 JQuery 的依赖,您需要替换

element.on('click',fn(){});

element.bind('click',fn(){});

angular 的 jquery lite 实现的所有文档都可以在下面找到

http://docs.angularjs.org/api/angular.element

于 2013-04-29T14:52:49.727 回答