3

基本的に、私がアクセスしたRequireJSを使用するページがあります。このページを調整したいので、ユーザースクリプトのルートに行きました。クライアント側のコードを見ると、次のように定義されたモジュールがあることがわかります。

define("settings", [], function() {
    return {
    SETTINGA: "100",
    SETTINGB: "200",
    etc.
    }
})

自分の項目を設定配列に追加したいだけでなく、ユーザースクリプトでモジュールを再定義して(変更を加えて)削除/再読み込みすることなく、いくつかの設定を変更したいと思います。このモジュールを調整することはできますか?


PS私はスクリプトインジェクション技術を使用して、ユーザースクリプトが元のページの他のJavaScriptと相互作用するようにしています。

また、Javascriptコンソールで実行すると(配列ではなく)オブジェクトが返されるため、やのrequire("settings")ようなことはできませんが、を実行することで設定にアクセスできます。それで、これは配列ではないので、これに設定を追加/再定義する方法がわかりませんか?require("settings")[0]require("settings").push(...)require("settings").SETTINGA

4

2 に答える 2

4

これを使って:

require('settings').new_property = 'new value';
于 2012-06-02T23:43:13.827 に答える
2

「設定配列」に設定を取得または追加できない理由は、最初から配列を作成していないためです。{foo:bar}オブジェクトリテラルであり、配列リテラル([foo,bar])ではありません。

于 2014-03-27T19:29:45.820 に答える