Search code examples
angularjsionic-frameworkngcordova

TypeError: $scope.scanBarcode is not a function in ionic


i'm trying to display a log message when the user clicks on the button. but instead this error shows up:

TypeError: $scope.scanBarcode is not a function
at new <anonymous> (controllers.js:8)
at Object.instantiate (ionic.bundle.js:18015)
at $controller (ionic.bundle.js:23417)
at Object.self.appendViewElement (ionic.bundle.js:59908)
at Object.render (ionic.bundle.js:57901)
at Object.init (ionic.bundle.js:57821)
at Object.self.render (ionic.bundle.js:59767)
at Object.self.register (ionic.bundle.js:59725)
at updateView (ionic.bundle.js:65400)
at ionic.bundle.js:65377
(anonymous) @ ionic.bundle.js:26799

here's my controller.js code:

angular.module('app.controllers', [])
.controller('page4Ctrl', ['$scope', '$stateParams', function ($scope, $stateParams) {
$scope.scanBarcode() = function()
{
     console.log("hello");
};

}])

and here's my html code:

<ion-view title="Page1" id="page18">
<ion-content padding="true" class="has-header">
<button id="page4-button4" class="button button-positive  button-block" ng-click="scanBarcode()">Scan</button>
<button id="page4-button5" class="button button-positive  button-block">Display Scanned Data</button>

what could be the problem?


Solution

  • I think you have defined the function wrong. Dont use () after the function name i.e. scanBarcode

    Try this:

    $scope.scanBarcode = function()//no () after the name
    {
         console.log("hello");
    };