本地存储计数器输出

Local storage counter output

我正忙于制作一个 phonegap 应用程序,我在其中捕获许多变量并通过电子邮件发送它们(为了简单起见,我将其简化为最基本的要素)。

我正在尝试将电子邮件的主题存储在本地存储中,以便它们在一天结束时通过单独的点击功能发送,然后从本地存储中删除它们。

我发送电子邮件的代码如下所示(请注意,我将 "var newFileName" 存储在本地存储中):

function sendMail(imageURI, click){
                var newFileName =  'the fileName';

                localStorage.setItem('newFileName', newFileName);



                cordova.plugins.email.addAlias('gmail', 'com.google.android.gm');
                cordova.plugins.email.open({
                    app: 'gmail',
                    to: 'user@gmail.com',
                    subject: newFileName,
                    body: 'this is the body',
                    attachments: [imageURI],
                    isHtml:  true
                });

            };

现在我将变量存储在本地存储中,我想发送使用另一个函数保存的所有内容:

function endOfDay(data){
                var text = [];
                var ending = localStorage.getItem('newFileName');
                var salesman = $('#agent').val();
                var newsFileName = 'End of Day Report for Agent: ' + salesman;

                cordova.plugins.email.addAlias('gmail', 'com.google.android.gm');
                cordova.plugins.email.open({
                    app: 'gmail',
                    to: 'user@gmail.com',
                    subject: newsFileName,
                    body: 'end of day:' + ending,
                    isHtml:  true
                });

这有效,但它只显示最近发送的电子邮件主题。因此,每次我发送一封新电子邮件时,本地存储似乎都在写主题,而我想做的是发送一整天发送的所有主题,然后在成功时从本地存储中删除

在 locastorage 中保存时执行此操作

var newFileName =  'the fileName';
var temp=localstorage.getItem('newFileName');
var somearray=temp.split(',');
somearray_length=somearray.length;
somearray[somearray_length]=newFileName;
var somestring=somearray.join(',');
localStorage.setItem('newFileName',somestring);

一天结束时

ending=localstorage.getItem('newFileName');
localStorage.setItem('newFileName',"");  //clear memory

我使用逗号 (,) 作为分隔符,使用不会出现在您的主题行中的任何唯一字符。

好的,现在可以了。解决方案是:

var newFileName = 'N' + result + '_' + agent + '_' + todayDate + '_' + newURI + '_' + depot + '_' + date;

localStorage.setItem('newFileName', localStorage.getItem('newFileName') + "," + newFileName );

感谢大家的帮助。