【问题标题】:Exclude files from broccoli Ember 2.0从 broccoli Ember 2.0 中排除文件
【发布时间】:2015-10-13 19:33:48
【问题描述】:

您好,我是 ember 的新手,我正在寻找一种方法来告诉 broccoli 不要包含我的 img/ 目录,我想在其中包含一些默认图像,这些图像将以编程方式添加到应用程序中

<img src='{{model.picture}}'/>

而且我可以在开发中看到它们,但在生产中看不到它们,因为名称由于 brocolli 任务而附加了一个哈希,我如何配置我的 BrocFile 以排除目录中的文件,我已经在此处检查了文档

https://github.com/rickharrison/broccoli-asset-rev

但我不知道我希望在我的 brocfile 中的哪个位置添加它。

我的 brocfile 的一部分

var EmberApp = require('ember-cli/lib/broccoli/ember-app');
    var app = new EmberApp({
        modals: {
            layout: true,
            style: true,
            animation: 'scale'
        }
    });



    app.import({
        production: 'bower_components/raygun4js/dist/raygun.js'
    });
    app.import('bower_components/lodash/lodash.js');

【问题讨论】:

    标签: javascript ember.js


    【解决方案1】:

    由于您使用的是 Ember(和 Ember-CLI),因此请确保在您链接的 broccoli-asset-rev 文档中向下滚动足够远,您将到达与您的情况最相关的部分。特别是,提供的“Ember CLI 插件使用”示例应该已经与您的案例非常匹配。

    根据您陈述的问题和提供的代码进行调整,您可能会得到类似的东西

    var app = new EmberApp({
        fingerprint: {
            exclude: ['img/']
        },
        modals: {
            layout: true,
            style: true,
            animation: 'scale'
        }
    });
    

    relevant Ember-CLI documentation section 还更详细地解释了指纹识别。

    除了使用exclude 选项之外,您还可以

    • 如果您实际上不需要指纹识别,请设置enabled: false
    • 一般不包括通过extensions: ['js', 'css', 'map'] 之类的图像扩展

    【讨论】:

      【解决方案2】:

      此答案适用于 Ember 2.x 到至少 3.x。

      另一种方法是使用可帮助您轻松排除文件的插件。安装 ember-cli-funnel 然后指定文件可以很好地完成此操作:

      // ember-cli-build.js
      
      let app = new EmberApp(defaults, {
        funnel: {
          exclude: [
            `${defaults.project.pkg.name}/routes/style-guide/**/*`,
            'addon-tree-output/some-addon/styles/**/*.scss'
          ]
        }
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-07
        • 1970-01-01
        • 2023-03-29
        • 2014-11-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多