如何通过早午餐访问包含在命名空间中的函数而不使用" wrapper:false"?

时间:2016-05-10 11:57:29

标签: javascript elixir phoenix-framework brunch

我的早午餐 - cofnig:

npm: {
  enabled: true,
  whitelist: ["jquery"],
  globals: {
    $: "jquery",
    jQuery: "jquery"
  }
}

在一个简单的html 静态 Web应用程序中,我可以非常简单地使用x-editable。但是,在我的网页框架(elixir)中,由于某种原因我不得不使用早午餐,而且这段代码不再适用了:

$.fn.editable.defaults.mode = "popup";
$(".editable").editable();

因为X-editable被

包装到一个函数中
 require.register("web/static/js/bootstrap-editable.min.js", function(exports, require, module) {

以及其他js文件的其他功能。

我尝试过不同的东西来获取它无济于事,例如:

$(".editable").require("web/static/js/bootstrap-editable.min.js").editable(); 
// note that $ is visible here

如何在不使用标志的情况下使其工作?#34; wrapper:false"在早午餐配置?

关于x-editable的问题,但总的来说我想知道如何在与其他js库的早午餐中处理这类问题。

1 个答案:

答案 0 :(得分:1)

您应该能够导入/要求库。这将执行代码(在这种情况下注册JQuery插件)并允许您使用它。

import "web/static/js/bootstrap-editable.min.js"
$.fn.editable.defaults.mode = "popup";
$(".editable").editable();