【问题标题】:namespacing 3rd party js libs using rails 3 asset pipeline使用 rails 3 资产管道命名第 3 方 js 库
【发布时间】:2012-04-23 21:31:40
【问题描述】:

我正在为 js 使用 Rails3 资产管道。我想将一些第三方库包装在一个 namspace 中,但我无法让它工作。比如这个

var myns= function() {
//= require swfobject
};

按字面意思产生:

var myns= function() {
//= require swfobject
};

也就是说,require 没有被调用。资产管道语法这么脆弱吗?此限制记录在哪里?有解决方法或更好的方法吗?

【问题讨论】:

    标签: javascript ruby-on-rails ruby-on-rails-3 asset-pipeline


    【解决方案1】:

    我第一次看到资产管道的这个用例。 无论如何,您应该检查 sprockets 文档https://github.com/sstephenson/sprockets(指令处理器)

    Sprockets 在每个 CSS 和 JavaScript 上运行指令处理器 源文件。指令处理器扫描开始的注释行 在注释块中使用 = 在文件顶部

    【讨论】:

    • 很遗憾,看起来你是对的。也许我用错误的方式处理这个问题?
    • 看看 swfobject 代码 code.google.com/p/swfobject/source/browse/trunk/swfobject/src/… - 它已经被包装在自己的命名空间 swfobject 中。
    • 它是真的,但我想要我自己的命名空间
    • ..反正我怕不修改原库的源代码就不能把它包装在命名空间中(或者改变命名空间)。
    • ...所以试试这个my.own.namespace.for.swfobject = swfobject
    猜你喜欢
    • 1970-01-01
    • 2012-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-09
    相关资源
    最近更新 更多