- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
刚开始学习一些 Grunt(以及替代方案 - gulp.js),我遇到了一些我自己似乎无法弄清楚的困惑。我了解如何为不同的环境定义不同的任务以提高效率和提高性能,但我遇到困难的地方在于如何利用这两种类型的任务。
问题 1: 假设我有一个 images
目录,我不想在开发期间在其上运行 grunt-contrib-imagemin
,但确实希望在生产期间运行它,以便“处理过的”图像位于 images/build
中。我如何在我的文件路径中考虑到这一点?有什么方法可以实现自动化吗?
问题 2:我不是开发人员,我对任何类型的服务器配置都没有什么经验,所以当人们说“运行 grunt build
”时我很困惑在你的服务器上”。那会发生在哪里?这甚至可以在像 iPage 这样的廉价共享主机上实现吗?
我真的在尝试通过构建工具扩展我的知识,所以欢迎任何和所有建议或评论。感谢您抽出时间!
最佳答案
您需要为开发和生产指定不同的任务。有点像
grunt.initConfig({
imagemin: {
dev: {
// dev server minify config
},
prod: {
// production server minify config
}
},
devtask: {
//Some task for development mode
}
});
grunt.loadNpmTasks('grunt-contrib-imagemin');
grunt.loadNpmTasks('devtask');
grunt.registerTask('default', ['devtask']);
grunt.registerTask('dev', ['devtask']);
grunt.registerTask('prod', ['imagemin:prod']);
现在,如果您在终端中输入“grunt dev”,grunt 只会运行“devtask”。只是 'grunt' 将运行 'default' 中列出的任务,这与 'grunt dev' 相同。
如果您输入“grunt prod”,grunt 会运行 imagemin 任务的 prod 目标。
所以现在 imagemin 只为生产运行。
修改 imagemin 任务的 'src' 和 'dest' 属性以获取 'images/build' 中的输出。您可以指定“cwd”属性来告知文件路径。
要在服务器端执行这些操作,您需要 NodeJS。一些网络托管公司提供这种服务。您将需要检查您的。我通常只是在我的开发机器上执行 grunt 步骤,然后通过 ftp 将输出文件传输到服务器。此步骤也可以通过许多可用的 grunt ftp 插件由 grunt 完成。
关于javascript - Grunt.js DEV 与 PROD 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21420363/
在 Angular 2 中,我相信你必须使用: enableProductionMode() 我在我的 environment.prod.ts 文件中调用它。 然后我可以调用: ng b -prod
我正在使用 docker,所以在生产模式下,我使用链接容器,其 URL 为“http://api:3000/” 而不是“http://localhost:3000/”在开发模式下。 如果“ng bui
每当我进行更改时,我都会运行此命令来构建我的项目: ng build --prod --aot=false --build-optimizer=false 这一直很好,直到我今天犯了一个错误。我偶然在
我们有两个分支:1. HEAD - 最新版本(AKA Trunc)2. PROD——发布版本 当您修复已发布版本中的错误时,您会执行以下哪些操作: 在 PROD 中修复它,然后合并到 HEAD 中 在
我必须运行抓取任务来为我的 App Engine (Java) 应用程序收集数据。 我不确定哪个最好 - 在开发模式下抓取数据并将其上传到产品或在应用程序在生产环境中运行时抓取它。 有区别吗? 将大量
我正在为一个项目使用最新的 angular-cli (beta-18)。我知道 cli 仍处于非常早期的阶段,但我很困惑为什么我的最终包大小在没有 AoT 的情况下实际上更小。 当我运行 ng bui
我正在阅读 Numpy 文档,似乎函数 np.prod(...)、np.product(...) 和ndarray 方法 a.prod(...) 都是等价的。 在样式/可读性和性能方面是否有首选版本可
ng build --prod 和 ng build --env=prod 之间有什么区别? 我的理解是 ng build --env=prod 仅在 environment.prod.ts 中设置环
我的 Angular 项目是 @Angular4.3.3 ng build -prod 构建需要 77 秒 ng build --prod --build-optimizer=true 构建需要 19
如果这是重复的,请将其标记为重复。另外,我不确定这是否是一个基于意见的问题。我的谷歌搜索没有返回任何与我的困境相关的信息,我也不确定我应该谷歌搜索什么。 ( 1 , 2 ) 我的问题是关于如何防止在
当我尝试使用 --prod 选项运行 ng build 时,它会编译成一个 main.js 文件,并且我在控制台中没有收到任何错误。 但是当我在浏览器中运行应用程序时,它仍然会查找单独的 js 文件。
当我使用命令 npm run build -- --prod 时,我收到以下错误消息: 属性“PropertyName1”是私有(private)属性,只能在“AppComponent”类中访问 “A
Angular 生产构建不会在我的项目中生成唯一的哈希值。 以下是构建日志截图 无法在新的 angular cli 项目中重现此问题,似乎我的项目中存在一些问题。 我正在使用 Angular - 6.
我第一次尝试在生产环境中运行我的项目,但没有按预期进行。 按照此处的说明操作后 https://symfony.com/doc/current/deployment.html我的 localhost/
我想在开发构建期间排除一个模块,但对于生产构建添加它。 在 settings.gradle我有: if (!this.hasProperty("-cart-view")) { println("
我的 Symfony 3 应用程序在我的本地网络服务器上完美运行。由于它安装在远程 Web 服务器上,因此会生成空白页面,甚至路由也不起作用。编辑 web/app.php $kernel = new
如何仅为 PROD 环境设置自定义错误页面?我想显示用于生产的自定义环境,但显示普通环境,但开发环境除外。 有什么想法吗? 最佳答案 我遇到了同样的问题,解决方案非常简单。您必须修改参数twig.ex
我的 Symfony 3 应用程序在我的本地网络服务器上完美运行。由于它安装在远程 Web 服务器上,因此会生成空白页面,甚至路由也不起作用。编辑 web/app.php $kernel = new
是 fullcalendar 用于插入日历并发挥其魔力的 html 标签。这是一个很棒的工具,但是发生了一些奇怪的事情。 我的日历是根据数据库中的事件创建的,所有这些东西都运行良好。问题是这样的..
我有 4 个 yaml 文件 部署.yaml 服务.yaml 入口.yaml issuer.yaml 我想将letsencrypt-prod 用于我的认证服务。但它不起作用。 当我用来确定入口正在工作
我是一名优秀的程序员,十分优秀!