Sto cercando di raccogliere angular
, localForage
e angular-localForage
con webpack
. Il mio bisogno di file di simile a questo,Utilizzo di Angular e localForage con Webpack
// Angular libs
require('../bower_components/angular/angular.min.js')
require('../bower_components/angular-resource/angular-resource.min.js')
require('../bower_components/angular-ui-router/release/angular-ui-router.min.js')
require('../bower_components/angular-bootstrap/ui-bootstrap.min.js')
require('../bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js')
require('../bower_components/localforage/dist/localforage.min.js')
require('../bower_components/angular-localforage/dist/angular-localForage.js')
angular-resource
, angular-ui-router
e ui-bootstrap
lavorato bene, ma quando ho bisogno angular-localForage
le cose hanno cominciato a complicarsi. I miei webpack.config.js
aspetto come questo,
var path = require('path')
module.exports = {
entry: "./src/app/app.js",
output: {
path: './src/assets',
filename: "bundle.js",
publicPath: 'assets/'
}
, module: {
loaders: [
{test: /\.less$/, loader: "style!css!less"},
{test: /\.(woff|woff2)(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=application/font-woff'},
{test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=application/octet-stream'},
{test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: 'file'},
{test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, loader: 'url?limit=10000&mimetype=image/svg+xml'}
]
}
, resolve: {
root: [ path.resolve('./src/bower_components') ]
, moduleDirectories: ['./src/bower_components']
}
};
Quando eseguo le applicazioni, sulla console che vedo questo errore
Uncaught TypeError: Cannot read property 'module' of undefined
che si verifica in linea 1 della angular-localForage
codice
'use strict';
1: var angularLocalForage = angular.module('LocalForageModule', ['ng']);
2: angularLocalForage.provider('$localForage', function() {
3: var lfInstances = {},
Questo significa che angular
non entri in tale ambito. Ho provato con imports-loader
e exports-loader
senza successo.
Qualche idea su come dovrebbe essere fatto?
Sei sicuro che risolva il problema? Quando utilizzo la soluzione, 'angular-localforage' mi lancia' Errore: impossibile risolvere il modulo 'localforage''. Lavoro intorno a questo con il loader 'script', facendo' require ('script! .. angular-localforage') '. – mariowise
Ho aggiornato la mia risposta con la mia configurazione del webpack. Non sono sicuro che la mia soluzione sia la migliore, ma almeno non esegue il codice dei moduli in ambito globale. –