我想使用AOT编译,但是当编译完成, 控制台打印AOT编译错误:未捕获的ReferenceError:要求没有定义
Uncaught ReferenceError: require is not defined
build.js:1
build.js:1
我似乎无法找到一个妥善的解决办法解决这个问题。
这是我汇总-config.js文件
import rollup from 'rollup'
import nodeResolve from 'rollup-plugin-node-resolve'
import commonjs from 'rollup-plugin-commonjs';
import uglify from 'rollup-plugin-uglify'
export default {
entry: 'src/main.js',
dest: 'src/build.js', // output a single application bundle
sourceMap: false,
format: 'iife',
onwarn: function(warning) {
// Skip certain warnings
// should intercept ... but doesn't in some rollup versions
if (warning.code === 'THIS_IS_UNDEFINED') { return; }
// console.warn everything else
console.warn(warning.message);
},
plugins: [
nodeResolve({jsnext: true, module: true}),
commonjs({
include: 'node_modules/rxjs/**',
}),
uglify()
]
}
这是我main.aot.ts文件
import './polyfills.ts';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { enableProdMode } from '@angular/core';
import { environment } from './environments/environment';
import { AppModuleNgFactory } from '../aot/src/app/app.module.ngfactory';
if (environment.production) {
enableProdMode();
}
platformBrowserDynamic().bootstrapModuleFactory(AppModuleNgFactory);
这是我build.js文件 !函数() {“use strict”; require(“./ polyfills.ts”); var r = require(“@ angular/platform-browser-dynamic”),e = require(“@ angular/core”),o = require “./environments/environment"),n=require("../aot/src/app/app.module.ngfactory");o.environment.production & & e.enableProdMo德(),r.platformBrowserDynamic()bootstrapModuleFactory(n.AppModuleNgFactory)}();
错误发生在这里我猜。
最后,这是我的index.html文件
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Among</title>
<base href="/">
<script>
window.module = 'aot';
</script>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
<app-root>
Loading...
</app-root>
</body>
<script src="build.js"></script>
</html>
请帮我找出解决方案。 谢谢!