`storageArea.set`上的Chrome扩展“Uncaught SyntaxError:Unexpected identifier”

时间:2013-02-04 14:50:31

标签: javascript google-chrome-extension

var getShortenedUrl = function () {

  chrome.tabs.getSelected(null, function (tab) {

    var request_data = {
      'command': 'generate',
      'params': {
        'url': tab.url,
        'code': text_field.value
      }
    }

    chrome.extension.sendRequest(request_data, function (data) {
      switch (data.status) {
        case 'OK':
          setTextField(data.shortened_url)
          bindBtnToCoopy()
          chrome.storage.local.get(data.shortened_url, function (arr) {
            if (!arr[data.shortened_url]) {
              chrome.storage.local.set(
                {data.shortened_url:
                 tab.url}) /* <-- this thing throws an error */
            }
          })
          break
          /* ... */
      }
    })
  })
}

请参阅https://github.com/noformnocontent/git-io-chrome/blob/master/chrome/popup.js#L96


如果我评论chrome.storage.local.set部分,那么一切都是“完美的”

1 个答案:

答案 0 :(得分:0)

如提到的question @pimvdb,为了保存对象,我必须使用一个Object。

if (!arr[data.shortened_url]) {
  var urlPair = {}
  urlPair[data.shortened_url] = tab.url
  chrome.storage.local.set(urlPair)
}

此后我还发布了“Git.io for Chrome”的v.0.5,请参阅http://git.io/crome了解更多