AngularJS的提供商

时间:2014-01-27 04:31:49

标签: angularjs

感谢您查看我的问题,我对AngularJS相对较新,所以任何建议都会很棒。

我正在尝试创建工厂/服务/提供商,但我一直收到错误,无法让它正常工作。

这是我的提供者:

app.provider('createEventProvider', function() {

this.event = {
name: '',
when: '',
where: '',
description: '',
image: ''
};

this.$get = function(){
    var event = this.event;

    return
    {
      getEvent: function() 
      {
        return event
      }
    }
}

  this.setEventData = function(eventProp, data)
  {
    this.event[eventProp] = data;
  };
 });

这是我的控制器:

 app.controller('createEventController', function($scope, createEventProvider){

     $scope.event = createEventProvider.getEvent();
 });

当我运行我的代码时,我收到以下错误消息: 未捕获的SyntaxError:意外的令牌) 引用我的提供者的这一行: this。$ get = function(){

我一直在四处寻找不同的教程,但却未能找到答案。任何帮助,建议或提示将不胜感激!

如果您需要我的代码来解决问题,请告诉我。

1 个答案:

答案 0 :(得分:5)

实际上这是这一部分:

return
    {
      getEvent: function() 
      {
        return event
      }
    }

你的线路回报有点过分了。将对象定义开始移动到返回行,你就可以了:

return {
  getEvent: function() {
    return event
  }
}