Javascript 用于扩展的chrome.storage.managed策略

Javascript 用于扩展的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扩展具有以下策略: 所以我们可以在实习生网络上隐藏“欢迎”页面。普通用户(来自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的,到目前为止。也许这不是唯一的问题,但首先要解决它。