将参数传递给余烬插件源代码的最佳方法

邓肯·沃克

TL; DR

是否可以将选项从插件的index.js文件传递到插件的Ember应用程序?

更多详情

通过Ember CLI插件,您可以通过在中设置选项将选项传递给插件Brocfile.js

var EmberApp = require('ember-cli/lib/broccoli/ember-app');

var app = new EmberApp({
  myAddon: {
    enabled: false // TODO - Change when CLoudfront is implemented
  },
});

然后,您可以按如下方式在插件的index.js文件中访问这些选项

module.exports = {
  name: 'my-addon',

  included: function(app) {
    var options = app.options.myAddon;
  }
}

但是,如果我想在Ember组件或视图或附加组件中的其他类中使用这些选项,该怎么办?例如,一个组件:

import Em from 'ember';

export default Em.Component.extend({
  
  doSomething: function() {
    if (this.get('options.enabled')) {
      // Then do something
    }
  },

});

是否可以将选项从插件的index.js文件传递到插件的Ember应用程序?

请注意,我知道您可以将参数传递给模板中的组件,但这不是这个问题的重点。谢谢。

manuel_mitasch

我认为最好使用来实现config/environment

您可以将选项添加到插件config/environment.js 文件中该对象将与您的应用程序合并config/environment.js

module.exports = function(/* environment, appConfig */) {
  return {
    myaddon {
      enabled: true
    }
  };
};

或者,如果你感到时髦,你可以覆盖的默认行为插件配置钩index.js手动添加的选项。但是应该考虑将幸福的道路添加到config/environment.js

在您的组件中,您可以使用以下命令导入配置:

import config from '../config/environment';

如果还需要将选项添加到您的应用程序实例中。您可以在中的APP属性下添加选项config/environment.jsAPP属性的内容已添加到该应用实例。在您的插件中config/environment.js

module.exports = function(/* environment, appConfig */) {
  return {
    APP: {
     // Here you can pass flags/options to your application instance
     // when it is created
      myaddon {
        enabled: true
      }
    }
  };
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将方法作为参数传递给PHP

来自分类Dev

将参数传递给Java方法

来自分类Dev

将jQuery插件作为参数传递给函数。

来自分类Dev

将CMake变量传递给C ++源代码

来自分类Dev

将参数传递给PrivateObject方法

来自分类Dev

将参数从AsyncTask传递给方法

来自分类Dev

将参数传递给WordCram代码

来自分类Dev

如何将参数传递给余烬组件

来自分类Dev

jQuery将参数传递给插件

来自分类Dev

Java代码,将参数传递给方法

来自分类Dev

将样式传递给组件的最佳方法

来自分类Dev

将重复参数传递给Numpy向量化函数的最佳方法

来自分类Dev

如何通过CLI将参数传递给Maven插件?

来自分类Dev

将方法参数传递给函数

来自分类Dev

将参数传递给Java方法

来自分类Dev

将函数作为参数传递给方法

来自分类Dev

将CMake变量传递给C ++源代码

来自分类Dev

将参数传递给方法

来自分类Dev

将特定参数传递给方法的最佳方法是什么

来自分类Dev

jQuery将参数传递给插件

来自分类Dev

如何将字符代码传递给jQuery插件

来自分类Dev

将参数传递给余烬插件源代码的最佳方法

来自分类Dev

Java代码,将参数传递给方法

来自分类Dev

将变量传递给余烬中的模态

来自分类Dev

将参数传递给事件处理程序函数的最佳实践

来自分类Dev

将动态参数传递给Gradle Jenkins插件

来自分类Dev

如何通过CLI将参数传递给Maven插件?

来自分类Dev

Clang:如何将多个参数传递给 clang 插件

来自分类Dev

将参数从代码传递给命令