小编Mat*_*att的帖子

如何使用变量值作为键名在chrome扩展中使用chrome.storage?

我正在尝试使用chrome的本地存储/同步存储(chrome.storage)来扩展,以存储数据条目,用于许多不同的条目.我似乎无法弄清楚它的正确语法.我只想简单地将信息存储为字符串.我搜索过,找不到任何有用的东西.

这对我来说使用正常的localStorage技术是有用的:

    var imageName = "Red Cat 5";
    var myDescription = "A nice kitty";

    localStorage.setItem (imageName, myDescription);
    console.log(localStorage[imageName]);
Run Code Online (Sandbox Code Playgroud)

这有效,让我从现有变量设置密钥.我怎么能用chrome.storage.local.set来做呢?我一直在尝试这个没有任何成功:

    var imageName = "Red Cat 5";
    var myDescription = "A nice kitty";

    chrome.storage.local.set({imageName: myDescription}, function()
    {console.log('success?');});

    chrome.storage.local.set({imageName: myDescription}, function()
    {chrome.storage.local.get(imageName, function(r){console.log(r.imageName);});});
Run Code Online (Sandbox Code Playgroud)

任何帮助深表感谢.谢谢!

-----更新以下-----

感谢您对代码的解释.我希望它可以帮助其他任何人.这样做的信息似乎很少!你的回答帮助我想出了这个:

    var nameOne = "al";
    var nameTwo = "bob";
    var nameThree = "carl";
    var nameFour = "dan";

    var dataObj = {};

    dataObj[nameOne] = nameTwo;
    dataObj[nameThree] = nameFour;

    storage.set(dataObj);

    storage.get(dataObj, function(result)
    {
    console.log(result[nameOne]);
    console.log(result[nameThree]);
    });
Run Code Online (Sandbox Code Playgroud)

local-storage google-chrome-extension

18
推荐指数
1
解决办法
1万
查看次数

在打字稿中创建对象时忽略界面中的某些属性?

我定义了一些属性的接口。我想从这个接口创建一个对象,但是在创建时我不想完全初始化接口中提到的所有属性。我只想初始化几个。我怎样才能做到这一点?谢谢你。

export interface Campaign {
  id: string;
  name: string;
  createdOn: string;
  lastUpdated: string;
  createdBy: User;
  type: CampaignType;
  status: CampaignStatus;
  startDate: string;
  endDate: string;
  budget: number;
  description: string;
  account: Account;
}
Run Code Online (Sandbox Code Playgroud)

我想创建一系列活动对象。这就是我想要做的。

let campaigns: Campaign[] = [
    {  id:"1",
       name: "test campaign"
      }

   ];
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误。

输入 '{ id: 字符串; 名称:字符串;}' 缺少类型“Campaign”的以下属性:createdOn、lastUpdated、createdBy、type 和 6 more.ts(2740)

typescript

6
推荐指数
2
解决办法
3639
查看次数

使用实体框架进行动态数据屏蔽

是否可以将 SQL 的动态数据屏蔽与实体框架一起使用?

如果可能的话,有没有办法将其与Asp.Identity结合起来?我正在从事的项目要求数据对某些用户角色进行屏蔽并对其他人可见。

我们使用数据库优先方法和实体框架,数据字段用以下内容屏蔽:

MASKED WITH (FUNCTION = 'default()')
Run Code Online (Sandbox Code Playgroud)

数据需要对管理员可见,并对其他用户角色保持隐藏。用户角色是通过 Asp.identity 定义的。

sql-server asp.net-mvc entity-framework masking data-masking

5
推荐指数
1
解决办法
3015
查看次数

如何以角度隐藏引导模式

我正在使用引导模式,但是当我从代码隐藏中隐藏它时,它会显示以下错误。

我正在使用 angular6。

代码

<div #exampleModal class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel"
        aria-hidden="true">

  @ViewChild('exampleModal') public exampleModal: ElementRef;

 this.exampleModal.hide();
Run Code Online (Sandbox Code Playgroud)

错误信息

错误类型错误:this.exampleModal.hide 不是函数

bootstrap-modal angular angular5 angular6

2
推荐指数
1
解决办法
8652
查看次数