【问题标题】:Gruntfile issue with grunt-contrib-requirejsgrunt-contrib-requirejs 的 Gruntfile 问题
【发布时间】:2014-04-02 17:51:35
【问题描述】:

我正在配置我的 Gruntfile,但我被困在我认为应该可行的事情上,但我找不到合适的配置。我正在尝试使用 grunt-contrib-requirejs 模块将我的凉亭组件复制到我的 dist。我坚持的部分是在复制到 dist 时保持文件夹结构完整。

我的应用的基本结构,和 dist/ 应该以同样的方式构建

Gruntfile.js
app/
  - assets/
    - bower_components/
    - js/
    - img/
    - etc/
  - index.html

目前,我在复制模块中定义了每个文件,并将它们全部复制

copy: {
        dist: {
            files: [{
                expand: true,
                dot: true,
                cwd: 'app',
                dest: 'dist',
                src: [
                    '*.{ico,png}',
                    '.htaccess',
                    'partials/**/*',

                    // Bower Components
                    'assets/bower_components/requirejs/require.js',
                    'assets/bower_components/fastclick/lib/fastclick.js',
                    'assets/bower_components/jquery/dist/jquery.min.js',
                    'assets/bower_components/modernizr/modernizr.js'

                ]
            }]
        }
    },

但我想消除这种情况并使用我已经在 main.js 中定义的路径来复制这些文件。更少的硬编码,更多的自动化。

我的需求任务

requirejs: {
        dist: {
            options: {
                mainConfigFile: app + '/assets/js/main.js',
                dir: dist + '/assets/js',
                optimize: 'uglify',
                paths: {
                    modernizr: 'empty:',
                    jquery: 'empty:',
                    fastclick: 'empty:'
                }
            }
        }
    },

当前的配置与副本相结合,可以正确地移动它们。如果我可以一起消除路径属性并仅使用目录属性,那就太好了。如果我必须将我的路径从我的 main.js 复制到这里,那没关系......如果这是唯一的方法。

如果您需要更多信息,请告诉我!

【问题讨论】:

    标签: javascript requirejs gruntjs


    【解决方案1】:

    你的 bower 目录中的 JS 文件应该包含在 requirejs 的优化输出中,只要它们在你的 require js 应用程序中配置和引用。如果它们没有被引用为依赖项,我认为它们不会被包含在内。

    ico、png、htaccess 等文件可能需要手动复制过来。

    根据你的部分,文本插件和 hbs 插件可以将它们编译成我认为的优化文件。

    我认为定义空:in 路径是为了使用网络资源(例如,当使用 CDN 而不是使用本地凉亭库时),因此路径配置可能是不必要的

    【讨论】:

      猜你喜欢
      • 2016-05-07
      • 2019-08-02
      • 2016-04-08
      • 1970-01-01
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多