【发布时间】:2016-09-23 17:28:30
【问题描述】:
Durandal 的 HTML starter kit pro 包含以下用于优化构建的繁琐任务:
durandal: {
main: {
src: ['app/**/*.*', 'lib/durandal/**/*.js'],
options: {
name: '../lib/require/almond-custom',
baseUrl: requireConfig.baseUrl,
mainPath: 'app/main',
paths: mixIn({}, requireConfig.paths, {
'almond': '../lib/require/almond-custom.js'
}),
exclude: [],
optimize: 'none',
out: 'build/app/main.js'
}
}
}
我对此有些担心,需要您的帮助解决:
脚本文件冗余。构建过程将
lib文件夹与 jQuery、bootstrap 等脚本一起保存。为什么?如果您查看构建的build/app/main.js是否已添加所有这些脚本。这导致我提出以下问题:如果我删除
lib文件夹,一切正常,除了我在控制台中得到一个require is not defined的事实。代码仍然在寻找lib/require/require.js,只需在其中添加即可解决。然而,这不正是almond的意义所在吗?它包含在构建的build/app/main.js文件中。据我所知,Almond 是在优化文件中使用的 require 的轻量级替代品。
要重现问题,您只需运行顶部链接中提供的“快速启动”即可。
【问题讨论】:
-
这个链接可能对你有帮助:stackoverflow.com/questions/15684040/…
-
您首先关心的是,您是否尝试过“removeCombined: true”属性?
-
@nikhil 是的,但它似乎没有任何效果
-
我克隆了你的项目并运行了“grunt durandal:main”。在 build 文件夹中,只创建了 main.js 文件。这不是你需要的吗?
-
你需要将你的index.html中脚本文件的引用改为"build/app/main.js"
标签: javascript requirejs durandal almond