【问题标题】:Uncaught Error: No module: LocalStorageModule未捕获的错误:没有模块:LocalStorageModule
【发布时间】:2014-11-11 20:43:53
【问题描述】:

我正在尝试使用本地存储处理 AngularJS 项目。 我正在制作一个待办事项列表应用程序并使用angular-local-storage 存储每个待办事项笔记。 我制作了一个localStorageService,它在我的控制器中使用。我已将该服务作为依赖项注入到我的 app.js 中,但是我不断收到空白页和控制台错误:Uncaught Error: No module: LocalStorageModule。我的语法有问题吗??...还是我使用的服务不正确?

app.coffee

@angTut = angular.module("angTut", ['LocalStorageModule']);

@angTut.config(["$routeProvider", ($routeProvider) ->
$routerprovider = $routeProvider;
$routeProvider.when("/",
    templateUrl: "views/Pages/welcome.html"
    controller: "PagesController"
);
$routeProvider.when("/add",
    templateUrl: "views/Todos/add.html"
    controller: "TodosController"
);
$routeProvider.otherwise(
    redirectTo: "/"
);
])

todo_controller.coffee

"use strict"
@angTut.controller('TodosController', (
$scope
todoService
) ->
$scope.save = ->
    todoService.add($scope.note)
    $scope.list()

$scope.clear = ->
    todoService.clear()
    $scope.list()

$scope.list = ->
    $scope.notes = []
    storedNotes = todoService.get(true)
    if storedNotes?
        i = 0
        while i < storedNotes.length
          $scope.notes.push storedNotes[i]
          i++

)

todo_service.coffee

'use strict'
@angTut.service('todoService', (
localStorageService
) ->
addFn = (data) ->
    existingValue = getFn();
    if(existingValue isnt null)
        newData = existingValue + ',' + data
        localStorageService.add('someStorageKey', newData)
    else
        localStorageService.add('someStorageKey', data)
    return data

getFn = (returnAsArray) ->
    storedNotes = localStorageService.get('someStorageKey')
    if storedNotes? and returnAsArray
        return storedNotes.split(',')
    else
        return storedNotes

clearFn = ->
    localStorageService.clearAll()

add: addFn
get: getFn
clear: clearFn
)

【问题讨论】:

  • 你指的是 Angular 的本地存储模块吗?虽然它不是 Angular 的一部分。
  • 对不起,我应该提到它是我通过凉亭安装的第三方组件...
  • 您在 index.html 上正确导入了吗?此模块的名称与在 lib 中声明的模块名称相同吗?

标签: angularjs coffeescript local-storage


【解决方案1】:

我确定这与您在 bower.json 中引用依赖项的方式有关。该组件的名称与 github 上的项目名称不完全相同。有可能是最近重命名了凉亭组件,但我对此不太确定。 如果您尝试使用项目名称搜索组件;

bower search angular-local-storage

No results.

我相信您打算使用的组件的名称是“angular-localstorage”。

☺  bower search angular-localstorage                                                                       ruby-2.0.0-p247
Search results:

angular-localstorage git://github.com/grevory/angular-local-storage.git

如果是这种情况,请进行必要的更改以确保您在“bower.json”文件中正确引用它。

例如

"dependencies": {
  ...
  "angular-localstorage": "*"
}

不要忘记在您的视图中正确命名它。

请注意,实际的 Javascript 文件仍然是 'angular-local-storage.js'

例如

&lt;script src="components/angular-localstorage/angular-local-storage.js"&gt;&lt;/script&gt;

【讨论】:

    【解决方案2】:

    不是这样,该模块确实存在于肠上,名称为

    angular-local-storage git://github.com/grevory/angular-local-storage.git
    

    【讨论】:

      猜你喜欢
      • 2014-12-25
      • 1970-01-01
      • 2018-11-28
      • 1970-01-01
      • 2014-09-05
      • 1970-01-01
      • 1970-01-01
      • 2019-04-20
      • 2015-04-13
      相关资源
      最近更新 更多