如何使用chrome扩展中的requirejs文本插件从文件加载文本?

时间:2014-02-09 08:00:24

标签: javascript google-chrome requirejs

在我的chrome扩展程序中,我想加载存储在名为fontOptions.html的文件中的html。 要做到这一点,我正在使用requirejs的文本插件 我使用的是background脚本,而不是content_script

这是我的档案。 manifest.json

{
    ....
        "background": {
        "scripts": ["background.js"],
        "persistent": false
        },
    ....
}

background.js

chrome.browserAction.onClicked.addListener(function (tab) {
    // Add all the libraries one by one through callback using programmatic injection
    chrome.tabs.executeScript(null, {
        file: 'thirdParty/jquery-2.0.3.js'
    }, function () {
        chrome.tabs.executeScript(null, {
            file: 'thirdParty/require.js'
        }, function () {
            chrome.tabs.executeScript(null, {
                file: 'thirdParty/text.js'
            }, function () {
                chrome.tabs.executeScript(null, {
                    file: 'thirdParty/mustache.js'
                }, function () {
                    chrome.tabs.executeScript(null, {
                        file: 'print.js'
                    });
                });
            });
        });
    });
});

print.js

......
// Testing requirejs's text pugin
    require(["text!fontOptions.html"], function(fontText){
    console.log('fontText = ' + fontText);
});
......

fontOptions.html :(此文件中的文本稍后会更改为正确的html代码)

This is the html file for font options

我的问题是当我运行扩展程序时它会给我这个错误。

Uncaught Error: Mismatched anonymous define() module: [object Object]
http://requirejs.org/docs/errors.html#mismatch                     require.js:166
makeError                                                          require.js:166
intakeDefines                                                     require.js:1221
localRequire                                                      require.js:1402
requirejs                                                         require.js:1737
(anonymous function)                                                  print.js:54

我在这里做错了什么?

0 个答案:

没有答案