2

嗨,我正在使用 angularjs 库进行本地存储

我已经使用常规将它添加到我的项目中

var app = angular.module('starter', ['ionic', 'starter.controllers', 'customFilters', 'LocalStorageModule']);

但是,当我尝试运行代码时,出现错误“未定义 isObject”、“未定义 isDefinded”

所有这些都是角度方法,如果我在它前面加上 angular.isDefined 就可以正常工作,但是库是这样写的,所以问题是我做错了什么?如何防止在每种方法之前使用“角”字。

谢谢。

4

1 回答 1

0

函数isDefinedisObject实际上是对 angularangular.isDefinedangular.isObject. 这些引用在文件中定义src/common.js,在构建过程中(检查concat:distGrunt task)被连接src/angular-local-storage.js并包装到闭包中:

concat: {
  options: {
    banner: '<%= meta.banner %>' + '\n' +
      '(function ( window, angular, undefined ) {' + '\n',
    footer: '})( window, window.angular );'
  },
  dist: {
    src: ['src/common.js', 'src/angular-local-storage.js'],
    dest: '<%= dirs.dest %>/<%= pkg.name %>.js'
  }
},

这就是为什么这些便利功能在库代码中可用,但在外部不可用。除非您在本地范围内的某个地方自己定义它们,否则您不能使用它们。

于 2014-11-09T09:04:52.733 回答