Ember.js 余烬资产—“;“公众”;资产不应该被提取指纹,但它们是吗?
在我的Ember.js 3.8项目中,我有一个图像文件:Ember.js 余烬资产—“;“公众”;资产不应该被提取指纹,但它们是吗?,ember.js,build,Ember.js,Build,在我的Ember.js 3.8项目中,我有一个图像文件: /public/assets/images/foo.png 。。。根据放置在公共/资产/图像中的文件,当引用为资产/图像时,应保持不变 是最新的,有点不太明确,但表示放置在public下的项目最终将位于资产下 当我进行生产构建时,我在/public/assets/images/中拥有的文件会以/dist/assets/images/结束,但带有指纹,例如foo-97cf8c0765aefa517d2e1fc71f43d6e.png 我是不
/public/assets/images/foo.png
。。。根据放置在公共/资产/图像中的文件,当引用为资产/图像时,
应保持不变
是最新的,有点不太明确,但表示放置在public
下的项目最终将位于资产
下
当我进行生产构建时,我在/public/assets/images/
中拥有的文件会以/dist/assets/images/
结束,但带有指纹,例如foo-97cf8c0765aefa517d2e1fc71f43d6e.png
我是不是要明确禁止指纹?文档似乎暗示这是不必要的?您可以在ember cli build.js
中禁用fingerprint
,如果当前环境是production
,则默认情况下指纹识别是启用的
// ember-cli-build.js
const EmberApp = require('ember-cli/lib/broccoli/ember-app');
module.exports = function(defaults) {
let app = new EmberApp({
fingerprint: {
enabled: false
}
});
//...
return app.toTree();
};
通过此您可以在ember cli build.js
中禁用指纹
,如果当前环境是生产
,默认情况下,指纹
已启用
// ember-cli-build.js
const EmberApp = require('ember-cli/lib/broccoli/ember-app');
module.exports = function(defaults) {
let app = new EmberApp({
fingerprint: {
enabled: false
}
});
//...
return app.toTree();
};
更多信息,请参见以下内容:
当环境是生产环境时(例如,ember build
--environment=production),该插件将通过向您的js、css、png、jpg和gif资产添加md5校验和,自动为您的js、css、png、jpg和gif资产添加指纹
文件名的结尾(例如。
资产/yourapp-9C2CBD818D09A742406C6CB8219B3B.js)。此外,您的
html、js和css文件将被重新写入以包含新名称。
在您的应用程序中,有几个选项可以传递到EmberApp
ember-cli-build.js自定义此行为
从指纹识别的角度来看,甚至对图像进行指纹识别也是有意义的,因为您可能需要更改它们,并且不想等到缓存TTL过期
您可以删除特定的文件
fingerprint: {
exclude: ['assets/images/user.png']
}
或整个文件扩展名
fingerprint:{
extensions: ['js', 'css', /* all the extensions you do want excluding image ones */]
}
看看这些,特别是:
当环境是生产环境时(例如,ember build
--environment=production),该插件将通过向您的js、css、png、jpg和gif资产添加md5校验和,自动为您的js、css、png、jpg和gif资产添加指纹
文件名的结尾(例如。
资产/yourapp-9C2CBD818D09A742406C6CB8219B3B.js)。此外,您的
html、js和css文件将被重新写入以包含新名称。
在您的应用程序中,有几个选项可以传递到EmberApp
ember-cli-build.js自定义此行为
从指纹识别的角度来看,甚至对图像进行指纹识别也是有意义的,因为您可能需要更改它们,并且不想等到缓存TTL过期
您可以删除特定的文件
fingerprint: {
exclude: ['assets/images/user.png']
}
或整个文件扩展名
fingerprint:{
extensions: ['js', 'css', /* all the extensions you do want excluding image ones */]
}
使用exclude
,您还可以排除目录(不仅仅是特定文件)。例如,exclude:['assets/images']
要排除assets/images
中的所有文件(或更具体的-文件路径包含assets/images
),使用exclude
,您还可以排除目录(不仅仅是特定文件)。例如,exclude:['assets/images']
以排除资产/图像中的所有文件(或更具体地说-文件路径包含资产/图像的位置
)