我创建了一个新的Angular 7项目,并且它构建的包名称为
我未能在此时配置项目,因为据我所知,webpack配置对开发人员是隐藏的。我考虑编写一种后构建脚本,该脚本将在创建包后完成并简单地重命名文件,但这样的解决方法似乎有些冒险,而且我不知道它是否实际可行。
我的构建脚本:
这是每个 Angular v.4.x 应用程序加载的捆绑包名称列表,我需要从 Angular v.7.x 中获得相同的内容:
这是我从 Angular v.7.x 应用程序获取的包列表:
runtime.js
、main.js
、polyfills.js
和styles.js
。 如何配置我的项目以使用自定义名称构建包?
我正在处理一个复杂的项目,其中多个Angular应用程序(版本4.x)同时运行在同一页面上。我有一个单独的应用程序(也是Angular v.4.x),它处理加载所有其他应用程序的包的配置。包列表是硬编码的,这是我无法更改的内容。因此,当我想要使用此代码引导我的Angular 7应用程序时,我不能在生产环境中执行此操作,因为包的名称不匹配。我未能在此时配置项目,因为据我所知,webpack配置对开发人员是隐藏的。我考虑编写一种后构建脚本,该脚本将在创建包后完成并简单地重命名文件,但这样的解决方法似乎有些冒险,而且我不知道它是否实际可行。
我的构建脚本:
"release": "ng build --prod --aot --extract-css=false --output-hashing=none --source-map=true"
。这是每个 Angular v.4.x 应用程序加载的捆绑包名称列表,我需要从 Angular v.7.x 中获得相同的内容:
'main.bundle.js':,
'vendor.bundle.js',
'styles.bundle.js',
'inline.bundle.js',
'scripts.bundle.js',
'polyfills.bundle.js'.
这是我从 Angular v.7.x 应用程序获取的包列表:
'runtime.js',
'main.js',
'polyfills.js',
'styles.js'
angular.json
中可用,尽管看起来并不是每个输出名称都是可配置的。也许你可以在执行后运行一个自定义脚本来重命名文件,然后为那些在v7版本中不再包含在构建中的文件添加一些空文件。 - Igor--output-hashing=none
。我会进一步查看关于angular.json
设置的内容,可能会在那里找到一些解决方案。 - inna.ditiashova