{"id":975,"date":"2016-08-24T12:49:50","date_gmt":"2016-08-24T15:49:50","guid":{"rendered":"https:\/\/www.erudio.com.br\/blog\/?p=975"},"modified":"2022-12-21T13:36:57","modified_gmt":"2022-12-21T16:36:57","slug":"angularjs-como-fixar-o-bug-module-ngstorage-is-not-available","status":"publish","type":"post","link":"https:\/\/www.erudio.com.br\/blog\/angularjs-como-fixar-o-bug-module-ngstorage-is-not-available\/","title":{"rendered":"AngularJS: Como fixar o bug module &#8220;ngStorage&#8221; is not available!"},"content":{"rendered":"<p>Bom esse \u00e9 um errinho est\u00fapido que eu poderia ter resolvido facilmente apenas olhando direito a documenta\u00e7\u00e3o mas que me custou um tempo razo\u00e1vel.<\/p>\n<p><strong>O Erro<\/strong>:<\/p>\n<p>Se quando voc\u00ea inspeciona o console v\u00ea o erro abaixo ent\u00e3o esse post \u00e9 pra voc\u00ea.<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nUncaught Error: [$injector:modulerr] Failed to instantiate module yourAppNameHere due to:\nError: [$injector:modulerr] Failed to instantiate module ngStorage due to:\nError: [$injector:nomod] Module 'ngStorage' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.\nhttp:\/\/errors.angularjs.org\/1.4.6\/$injector\/nomod?p0=ngStorage\n    at REGEX_STRING_REGEXP (http:\/\/localhost:3000\/bower_components\/angular\/angular.js:68:12)\n    at http:\/\/localhost:3000\/bower_components\/angular\/angular.js:1986:17\n    at ensure *snip*\n<\/pre>\n<p><strong>A corre\u00e7\u00e3o<\/strong>:<\/p>\n<p>No meu caso alguns pacotes usavam indiretamente o pacote <strong>ngstorage<\/strong> e eu havia instalado o <strong>ngStorage<\/strong>. Sim temos duas variantes uma com <strong>&#8220;S&#8221; mai\u00fasculo<\/strong> e outra n\u00e3o. Ent\u00e3o eu deletei todos os m\u00f3dulos, do <strong>Bower<\/strong>, em cache. Ele cria um cache local dos pacotes que voc\u00ea definir no seu projeto. Nos <strong>Windows 10<\/strong>, a pasta de cache padr\u00e3o \u00e9 <strong>C:\\Users\\[SeuUser]\\AppData\\Local\\bower\\cache\\packages<\/strong> (<em>tenha certeza de que voc\u00ea n\u00e3o substituiu esse endere\u00e7o padr\u00e3o em seu arquivo <strong>.bowerrc<\/strong><\/em>).<br \/>\nE tamb\u00e9m deletei todas as dependencias do <strong>NodeJS<\/strong> que est\u00e3o em <strong>C:\\Users\\[SeuUser]\\AppData\\Roaming\\npm-cache<\/strong>. Feito isto eu executei um <strong>npm install<\/strong> e <strong>bower install &#8211;save ngstorage<\/strong> rodei o projeto novamente e tudo funcionou como o esperado.<\/p>\n<p>Assumindo que voc\u00ea esteja usando Bower execute <strong>&#8220;bower install ngstorage&#8221;<\/strong> voc\u00ea deve se assegurar de que est\u00e1 tendo algo similar \u00e0 imagem abaixo como retorno:<\/p>\n<p><a href=\"https:\/\/www.semeru.com.br\/blog\/angularjs-como-fixar-o-bug-module-ngstorage-is-not-available\/bugngstorage\/\" rel=\"attachment wp-att-976\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-976\" src=\"https:\/\/www.semeru.com.br\/blog\/wp-content\/uploads\/2016\/08\/bugNgStorage.png\" alt=\"bugNgStorage\" width=\"687\" height=\"138\"><\/a><\/p>\n<p>Caso voc\u00ea tenha um arquivo de depend\u00eancias <strong>&#8220;bower.json&#8221;<\/strong> ent\u00e3o execute <strong>&#8220;bower install ngstorage &#8211;save&#8221;<\/strong> para que o <strong>Bower<\/strong> adicione uma nova entrada para o <strong>ngstorage<\/strong>.<\/p>\n<p>Ent\u00e3o tudo dever\u00e1 funcionar normalmente.<\/p>\n<h2>Treinamentos relacionados com este post<\/h2>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_react_java\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"React JS consumindo REST API RESTful em Spring Boot Java 16\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/16-rest-react-java.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_react_asp_net\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"React JS consumindo REST API RESTful em ASP.NET Core .NET 6\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/17-rest-react-aspnet.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_react_kotlin\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"React JS consumindo REST API RESTful em Spring Boot e Kotlin\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/19-rest-react-kotlin.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_docker\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Docker do 0 \u00e0 Maestria: Cont\u00eaineres Desmistificados mais 3 B\u00d4NUS\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/09-docker.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_kotlin\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Kotlin para DEVs Java: Aprenda a Linguagem Padr\u00e3o do Android\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/20-kotlin.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_spring_java\" target=\"_blank\" rel=\"noopener\"><\/p>\n<p><img decoding=\"async\" style=\"max-width: 100%;\" title=\"REST API's RESTFul do 0 \u00e0  AWS com Spring Boot 3, Java e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/07-rest-spring-java.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_asp_net\" target=\"_blank\" rel=\"noopener\"><\/p>\n<p><img decoding=\"async\" style=\"max-width: 100%;\" title=\"REST API's RESTFul do 0 \u00e0 Azure com ASP.NET Core 5 e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/01-rest-asp.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_spring_kotlin\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"REST API's RESTFul do 0 \u00e0 AWS com Spring Boot 3, Kotlin e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/18-rest-spring-kotlin.png\"><br \/>\n<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bom esse \u00e9 um errinho est\u00fapido que eu poderia ter resolvido facilmente apenas olhando direito a documenta\u00e7\u00e3o mas que me custou um tempo razo\u00e1vel. O Erro: Se quando voc\u00ea inspeciona o console v\u00ea o erro abaixo ent\u00e3o esse post \u00e9 pra voc\u00ea. A corre\u00e7\u00e3o: No meu caso alguns pacotes usavam indiretamente o pacote ngstorage e [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6,16,71,72],"tags":[127,138,198,199],"_links":{"self":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts\/975"}],"collection":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/comments?post=975"}],"version-history":[{"count":2,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts\/975\/revisions"}],"predecessor-version":[{"id":1536,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts\/975\/revisions\/1536"}],"wp:attachment":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/media?parent=975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/categories?post=975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/tags?post=975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}