我目前正在尝试为Google Chrome编写扩展程序,可以用来上传文件.
有两个页面:背景页面和弹出页面.单击全向条右侧的图标时,将显示弹出页面.您可以使用标准HTML指定要上载的文件<input type='file' ... />.
选择文件并单击"上传"后,应将文件的名称(+路径)发送到后台页面.这是因为用户可以通过点击屏幕上的其他位置关闭页面来关闭弹出窗口.
当弹出窗口处于活动状态,后台页面将文件上传到服务器时,弹出窗口也应该从后台页面接收上传(0-100%)的进度,并显示该信息.完成后,用户应该看到URL.
问题是,我不知道如何在这两个页面之间进行通信.文档不清楚这是如何工作的.我试过的一件事就是在后台页面上调用一个函数upload(filename),并将此代码放在弹出页面中:
var BGPage = chrome.extension.getBackgroundPage();
BGPage.upload(the_filename);
Run Code Online (Sandbox Code Playgroud)
但它没有用,功能没有被调用.
有谁知道如何将文件名从弹出页面发送到后台页面,以及如何通过弹出页面从后台页面检索上传状态(最终是链接)?
提前致谢!
我试图将句子分解为单词。通常,我会使用textstring.split(' '),但是我也希望分别将逗号和句点分开,因此“不,谢谢”将分为["No", ",", "thank", "you"]而不是["No,", "thank", "you"]。
我想到这样做:
textstring.replace(",", " ,").replace(".", " .").split(' ')
Run Code Online (Sandbox Code Playgroud)
但这感觉有点hacky。有什么更好的方法吗?