- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
一切似乎都构建良好:http://d.pr/i/1aZxR具有以下配置。
但是,当我运行代码时,我收到以下错误(通过 webpack-dev-server):
Uncaught TypeError: __webpack_require__(...) is not a function(anonymous function) @ login.js:4__webpack_require__ @ bootstrap 38790ff45722f55eb700?6a08:50(anonymous function) @ bootstrap.js:2363__webpack_require__ @ bootstrap 38790ff45722f55eb700?6a08:50(anonymous function) @ app.38790ff45722f55eb700.js:29__webpack_require__ @ bootstrap 38790ff45722f55eb700?6a08:50webpackJsonpCallback @ bootstrap 38790ff45722f55eb700?6a08:21(anonymous function) @ app.38790ff45722f55eb700.js:1
angular.js:68 Uncaught Error: [$injector:modulerr] Failed to instantiate module app due to:
Error: [$injector:nomod] Module 'app' 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.
http://errors.angularjs.org/1.4.7/$injector/nomod?p0=app
at http://localhost:3000/vendor.js:193:13
at http://localhost:3000/vendor.js:2111:18
at ensure (http://localhost:3000/vendor.js:2035:39)
at module (http://localhost:3000/vendor.js:2109:15)
at http://localhost:3000/vendor.js:4515:23
at forEach (http://localhost:3000/vendor.js:461:21)
at loadModules (http://localhost:3000/vendor.js:4499:6)
at createInjector (http://localhost:3000/vendor.js:4424:12)
at doBootstrap (http://localhost:3000/vendor.js:1782:21)
at bootstrap (http://localhost:3000/vendor.js:1803:13)
http://errors.angularjs.org/1.4.7/$injector/modulerr?p0=app&p1=Error%3A%20%…%20at%20bootstrap%20(http%3A%2F%2Flocalhost%3A3000%2Fvendor.js%3A1803%3A13)(anonymous function) @ angular.js:68(anonymous function) @ angular.js:4413forEach @ angular.js:336loadModules @ angular.js:4374createInjector @ angular.js:4299doBootstrap @ angular.js:1657bootstrap @ angular.js:1678angularInit @ angular.js:1572(anonymous function) @ angular.js:28899fire @ jquery.js:3099self.fireWith @ jquery.js:3211jQuery.extend.ready @ jquery.js:3417completed @ jquery.js:3433
我认为 babel 正在以某种方式干扰 __webpack_require__
但我不确定。我确实尝试使用不同的转换/插件,但找不到解决方案。
.babelrc:
{
"plugins":[
"transform-runtime",
"transform-node-env-inline"
],
"presets":[
"stage-0",
"es2015"
]
}
这是我的 webpack.config.js:
var Clean = require('clean-webpack-plugin');
var CompressionPlugin = require("compression-webpack-plugin");
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var HtmlWebpackPlugin = require('html-webpack-plugin');
var fs = require('fs');
var ngAnnotatePlugin = require('ng-annotate-webpack-plugin');
var path = require('path');
var StatsPlugin = require('stats-webpack-plugin');
var webpack = require('webpack');
//CONSTANTS
var NODE_ENV = process.env.NODE_ENV;
var IS_DEV = NODE_ENV === 'development';
var babelFile = fs.readFileSync('./.babelrc', 'utf8');
var BABELRC = JSON.parse(babelFile);
var cleanFonts = function(){
return new Clean(['dist/tmp/*.{ttf,eot,svg,woff}']);
}
var cleanImages = function(){
return new Clean(['dist/tmp/*.{png,jpg}']);
}
var cleanJs = function(){
return new Clean(['dist/*.{js,map}']);
}
var plugins = [
new webpack.NoErrorsPlugin(),
cleanJs(),
// new StatsPlugin('stats.json', {chunkModules: true}),
new webpack.ProvidePlugin({$: "jquery",jQuery: "jquery","window.jQuery": "jquery" }),
new webpack.IgnorePlugin(/^\.\/locale$/, [/moment$/]),
new HtmlWebpackPlugin({
template: 'client/app/vendors/assets/index-tmpl.html',
filename: 'index.html'
}),
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
filename: 'vendor.js',
chunks:['customer','personalOrganization','app']
})
// new ngAnnotatePlugin({add: true})
// new ExtractTextPlugin("style.[hash].css", {
// disable: false,
// allChunks: true
// }),
//new webpack.optimize.CommonsChunkPlugin({minChunks: 2, children: true, async: true}),
// new CompressionPlugin({asset: "{file}.gz", algorithm: "gzip", regExp: /\.js$|\.html$/, threshold: 10240, minRatio: 0.8 })
];
var dev_plugins = [
]
var prod_plugins = [
cleanFonts(),
cleanImages(),
new webpack.optimize.UglifyJsPlugin({
minimize: true,
sourceMap: false,
compress: { warnings: false },
mangle: false
}),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.AggressiveMergingPlugin()
];
if(NODE_ENV !== 'development'){
plugins = plugins.concat(prod_plugins);
}
else{
plugins = plugins.concat(dev_plugins);
}
babelLoaderOpts = {
cacheDirectory: true
};
Object.assign(babelLoaderOpts, BABELRC);
module.exports = {
cache: IS_DEV,
// watch: IS_DEV,
devtool: 'source-map',
entry: {
"app": "./client/app/app.js",
"devserver": 'webpack-dev-server/client?http://localhost:3000'
},
output: {
path: __dirname + "/dist",
filename: '[name].[hash].js'
},
module: {
noParse: [
/moment.js/
],
loaders: [
{ test: require.resolve("jquery"), loader: "expose?$!expose?jQuery" },
{
test: /\.js$/,
exclude: /(node_modules|bower_components|vendors)/,
loader: 'babel',
query: babelLoaderOpts
},
{ test: /\.html$/, loader: 'raw' },
{ test: /\.scss$/, loader: "style!css!sass?outputStyle=expanded"+"&includePaths[]=" + path.resolve(__dirname, "./node_modules/compass-mixins/lib")},
{ test: /\.css$/, loader: 'style!css' },
{ test: /\.(png|jpeg|jpg|gif)$/, loader: 'url-loader?limit=30000&name=tmp/[name].[ext]&no_emit_env=development'},
{ test: /\.woff(\?\S*)?$/, loader : 'url?prefix=font/&limit=10000&mimetype=application/font-woff&name=tmp/[name].[ext]&no_emit_env=development'},
{ test: /\.woff2/, loader: 'url?prefix=font/&limit=100000&mimetype=application/font-woff2&name=tmp/[name].[ext]&no_emit_env=development' },
{ test: /\.ttf/, loader : 'file?prefix=font/&name=tmp/[name].[ext]&no_emit_env=development'},
{ test: /\.eot/, loader : 'file?prefix=font/&name=tmp/[name].[ext]&no_emit_env=development'},
{ test: /\.svg/,loader : 'file?prefix=font/&name=tmp/[name].[ext]&no_emit_env=development'},
//{ test: /\.scss$/, loader: ExtractTextPlugin.extract('style', 'css?modules&importLoaders=2&sourceMap!sass?outputStyle=expanded&sourceMap=true&sourceMapContents=true&&includePaths[]='+ path.resolve(__dirname, './node_modules/compass-mixins/lib')) },
//{ test: /\.css$/, loader: ExtractTextPlugin.extract("style-loader", "css-loader") }
]
},
devServer: {
contentBase: './client/app'
},
resolve: {
modulesDirectories: ['vendors','node_modules', 'bower_components'],
extensions: ['', '.js', '.json']
},
plugins: plugins
};
最佳答案
我想添加可能出现此错误的另一个原因:
我做了以下事情:
import mapActions from 'vuex'
而不是:
import { mapActions } from 'vuex'
前者导入整个 vuex
导出,它是一个对象。添加对象解构解决了这个问题。
关于webpack - 使用 babel 6 时为 ` __webpack_require__(...) is not a function`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33683539/
当我尝试简化导入时,出现了 webpack TypeError。以下代码可以正常运行,没有任何问题。在这里,我从 core/components/form/index.js 导入一个名为 smartF
我正在尝试在 Visual Studio 上启动我的 Angular 应用程序,但是当它启动时,它停留在“正在加载...”部分。 如果我阅读 Chrome 的错误控制台,我会收到以下错误: Uncau
我收到以下错误。几个月来,我的应用程序一切正常,但在运行 npm install 后才开始出现这种情况。 Uncaught ReferenceError: __webpack_require__ is
我目前正在使用 React 将网站从 React-Fuse 转移到 NextJS。大多数情况下一切都工作正常,但在尝试创建构建时出现一个我无法解决的错误: > Build error occurred
当我尝试使用此代码动态导入 vue 组件时: const components = require.context('./', true, '/^index\.js$/'); 我收到此错误: app.
const importAll = (r) => r.keys().map(r); const importAllFrom = (dir) => importAll(require.context(d
我刚刚开始学习 Angular 4。我收到以下错误 Uncaught TypeError: Object(...) is not a function at eval (bidi.es5.js
尝试在 index.js 中使用 hydrate() 时出现 webpack TypeError。当我使用 ReactDOM.render() 而不是 hydrate 并且我使用 hydrate 进行
一切似乎都构建良好:http://d.pr/i/1aZxR具有以下配置。 但是,当我运行代码时,我收到以下错误(通过 webpack-dev-server): Uncaught TypeError:
我有一个使用 Stripe 的 vue 项目,但是,就在最近,当我加载我的工作区时,这个错误一直在发生,我完全不知道如何诊断它。 有趣的是,我的实时版本没有任何错误,而且它们是完全相同的版本。 我在过
我正在使用 React.lazy 在运行时加载一些 React 类,这样它们就不会一次全部加载。我的代码适用于生产,但在我处于开发模式时崩溃。 (更新:我的代码不再适用于生产 - 见下文)。 特定的错
我有一个使用 loadChildren 的简单 Angular2 应用程序,它在依赖 SystemJs 的开发过程中工作正常,在对其进行 webpack 并使用 webpack 加载器修复问题后,输出
我是一名优秀的程序员,十分优秀!