当您有'包括'
What is the best way to update/refresh a Page-Mod when you have new data for the 'Include'?
本文关键字:包括 更新时间:2023-09-26
我有一个page-mod
,它使用数组作为include字段的数据。我希望能够使用splice
从阵列中添加/删除数据,并刷新page-mod
。这是我的代码:
//APIs:
var store = require("simple-storage");
var pageMod = require("page-mod");
var self = require("self");
//Array for Include:
store.storage.sites = ["*.example.com","*.google.com","*.org"];
//Page-mod code:
myPageMod = pageMod.PageMod({
include: store.storage.sites,
contentScriptWhen: 'start',
contentScriptFile: [self.data.url("nicEdit-latest.js"),
self.data.url("pagedit.js")]
});
//Code to change array
function deleteItem(index) {
store.storage.sites.splice(index,1);
});
现在,我需要的是一种将page-mod
作为deleteItem
的一部分进行更新的方法,这样它就不再适用于新删除的网站。
我已经尝试将page-mod
放入函数中并调用该函数。我还尝试更新数组,然后更新myPageMod.include = store.storage.sites
,但也没有成功。
page-mod
有一个include
属性,即当前包含规则的列表。您可以在上面调用add()
和remove()
方法,例如:
function addItem(rule) {
store.storage.sites.push(rule);
myPageMod.include.add(rule);
}
function deleteItem(index) {
myPageMod.include.remove(store.storage.sites.splice(index,1));
}
我认为如果你使用一个变量来引用你的pagemod,你应该能够更改它。
var myPageMod = pageMod.PageMod({
include: store.storage.sites,
contentScriptWhen: 'start',
contentScriptFile: [self.data.url("nicEdit-latest.js"),
self.data.url("pagedit.js")]
});
function deleteItem(index) {
myPageMod.include = store.storage.sites.splice(index,1);
});
相关文章:
- 包括用于facebook评论框的JavaScript SDK
- 查找元素高度,包括边距
- asp.net,包括iss上的javascript slow
- SuiteScript2.0-包括一个自定义文件
- javascript加密实现,包括可信否认
- 在ng中给出文件路径包括什么
- 包括angular 1.3.0项目上的angular bootstrap ui
- 如何将单词(包括单词)与连字符匹配
- 根据下拉值包括或加载php
- 根据另一个数组对数组进行排序,包括位置和字符串[ES6]
- PHP 包括 Javascript 生成的文件名
- 包括android中的HTML UI
- 如何将页面上的所有电话号码更改为可点击链接,不包括特定类别的元素
- Javascript:包括特殊字符的文本选择
- 包括php文件和几个js文件
- spin.js/angular spinner:如何将spin定位到DOM元素中(包括plunker演示)
- CodeIgniter:用于获取包括图像在内的值的控制器
- 在部署ckeditor时,我需要包括插件文件夹吗
- 根据屏幕宽度大小包括PHP
- JSON:loop Invoice Items:如果InvoiceNo未退出则添加,如果退出则更新值,示例包括在内