Javascript 用于扩展的chrome.storage.managed策略
我们希望Chrome扩展具有以下策略: 所以我们可以在实习生网络上隐藏“欢迎”页面。普通用户(来自Chrome网络商店)在安装此Chrome扩展时会看到“欢迎”页面 第一个Background.js代码工作正常,这里显示了用户首次安装此扩展时的“欢迎页面”。 我将代码升级为“new background”,但该代码不执行使用网络“policy”注册表隐藏“welcome page”的任务。你知道如何解决这个问题吗?或者缺少什么JavaScript代码 这是我们的代码: Background.jsJavascript 用于扩展的chrome.storage.managed策略,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我们希望Chrome扩展具有以下策略: 所以我们可以在实习生网络上隐藏“欢迎”页面。普通用户(来自Chrome网络商店)在安装此Chrome扩展时会看到“欢迎”页面 第一个Background.js代码工作正常,这里显示了用户首次安装此扩展时的“欢迎页面”。 我将代码升级为“new background”,但该代码不执行使用网络“policy”注册表隐藏“welcome page”的任务。你知道如何解决这个问题吗?或者缺少什么JavaScript代码 这是我们的代码: Background.js
chrome.storage.local.get(['firstRun'], function(chromeset){
if ((chromeset["firstRun"]!="false") && (chromeset["firstRun"]!=false)){
chrome.tabs.create({url: "http://www.google.com", selected:true})
chrome.storage.local.set({"firstRun": "false"});
}
});
...
"permissions": [
"bookmarks"
],
"storage": {
"managed_schema": "schema.json"
}
}
var HideFirstRunPage = false;
if (require("info").platform == "chromium" && "managed" in chrome.storage)
{
chrome.storage.managed.get('HideFirstRunPage', function (data) {
var thenewvalue = data.HideFirstRunPage;
if(thenewvalue == true){
chrome.storage.local.set({"firstRun": "false"});
} else{
initwelcome()
}
});
} else{
initwelcome()
}
function initwelcome(){
// new user? Then open this google.com page
chrome.storage.local.get(['firstRun'], function(chromeset){
if ((chromeset["firstRun"]!="false") && (chromeset["firstRun"]!=false)){
chrome.tabs.create({url: "https://www.google.com", selected:true})
chrome.storage.local.set({"firstRun": "false"});
});
}
document.addEventListener('DOMContentLoaded', function () {initwelcome()}
manifest.js
chrome.storage.local.get(['firstRun'], function(chromeset){
if ((chromeset["firstRun"]!="false") && (chromeset["firstRun"]!=false)){
chrome.tabs.create({url: "http://www.google.com", selected:true})
chrome.storage.local.set({"firstRun": "false"});
}
});
...
"permissions": [
"bookmarks"
],
"storage": {
"managed_schema": "schema.json"
}
}
var HideFirstRunPage = false;
if (require("info").platform == "chromium" && "managed" in chrome.storage)
{
chrome.storage.managed.get('HideFirstRunPage', function (data) {
var thenewvalue = data.HideFirstRunPage;
if(thenewvalue == true){
chrome.storage.local.set({"firstRun": "false"});
} else{
initwelcome()
}
});
} else{
initwelcome()
}
function initwelcome(){
// new user? Then open this google.com page
chrome.storage.local.get(['firstRun'], function(chromeset){
if ((chromeset["firstRun"]!="false") && (chromeset["firstRun"]!=false)){
chrome.tabs.create({url: "https://www.google.com", selected:true})
chrome.storage.local.set({"firstRun": "false"});
});
}
document.addEventListener('DOMContentLoaded', function () {initwelcome()}
schema.json
{
"type": "object",
"properties": {
"HideFirstRunPage": {
"title": "Hide the first welcome page",
"description": "Configures App to show not the first welcome page when you install this extension.",
"type": "boolean"
}
}
}
新背景.js
chrome.storage.local.get(['firstRun'], function(chromeset){
if ((chromeset["firstRun"]!="false") && (chromeset["firstRun"]!=false)){
chrome.tabs.create({url: "http://www.google.com", selected:true})
chrome.storage.local.set({"firstRun": "false"});
}
});
...
"permissions": [
"bookmarks"
],
"storage": {
"managed_schema": "schema.json"
}
}
var HideFirstRunPage = false;
if (require("info").platform == "chromium" && "managed" in chrome.storage)
{
chrome.storage.managed.get('HideFirstRunPage', function (data) {
var thenewvalue = data.HideFirstRunPage;
if(thenewvalue == true){
chrome.storage.local.set({"firstRun": "false"});
} else{
initwelcome()
}
});
} else{
initwelcome()
}
function initwelcome(){
// new user? Then open this google.com page
chrome.storage.local.get(['firstRun'], function(chromeset){
if ((chromeset["firstRun"]!="false") && (chromeset["firstRun"]!=false)){
chrome.tabs.create({url: "https://www.google.com", selected:true})
chrome.storage.local.set({"firstRun": "false"});
});
}
document.addEventListener('DOMContentLoaded', function () {initwelcome()}
“它不工作”不是很有描述性,代码也不完整(没有调用
initwelcome
)。请解决您的问题。@Xan已更新。只需要一个简单的Chrome“策略”工作示例,就可以在我们的网络中隐藏“欢迎页面”。在Chrome网络商店中,它必须显示常规的“欢迎页面”。您的代码有一个标准的“让我们用异步函数修改全局变量”错误。基本上,您需要从管理的内部调用initwelcome()
。获取回调以使其具有正确的执行顺序。@Xan这不是同一个问题或重复!这是关于Chrome.storage.managed的,到目前为止。也许这不是唯一的问题,但首先要解决它。