當使用grunt-contrib-requirejs建立我的項目,我knockout components'模塊,僅在組件本身(text
和mapping
)將不會被添加到我的壓縮輸出腳本文件引用。咕嚕-的contrib-requirejs淘汰賽成分問題
我淘汰賽模塊:
define(['knockout', 'text!./foo.html', 'mapping'], ....)
由於該組件在運行時異步注射 - 據我所知 - 咕嚕-的contrib-requirejs不接他們,並把它們添加到我的壓縮文件,out: "<%= settings.getBuildPath() %>/js/lib/require/require.js",
下面:
咕嚕配置:
requirejs: {
compile: {
options: {
baseUrl: 'src/js',
mainConfigFile: "src/js/app.js",
name: 'app',
out: "<%= settings.getBuildPath() %>/js/optimized.js",
preserveLicenseComments: false,
include: ['lib/require/require.js']
}
}
}
如果我在另一個不是挖空組件模塊的腳本文件中引用它們,則該項目可以正常工作。
那麼,我該如何讓grunt-contrib-requirejs添加在我的組件中引用的腳本呢?
請解釋你爲什麼用你的壓縮文件覆蓋requirejs?我猜''%= settings.getBuildPath()%>/js/lib/require/require.js'和'lib/require/require.js'是同一個文件。 –
@TomaszJakubRup不,他們不是。我的index.html有一個腳本引用:''。所以當所有文件被壓縮到一個文件時,它需要具有相同的名稱。實際的require.js包含在include:['lib/require/require.js']'中,因爲優化器將其刪除。儘管目前這不是我的問題,但您是否對此方法有任何疑慮?如果我將它稱爲'out.js',我需要在grunt中相應地修改腳本標記,對吧? – Johan
'out:'out.js''並加載它''。在GitHub或BitBucket上顯示完整的工作示例 –