我在 Count 函数上遇到错误 - eslint:无返回分配 - Return 语句不应包含赋值。我该如何解决这个问题?

问题描述 投票:0回答:1

基本上我的脚本根据网页信息创建一个超链接。当用户单击该超链接时,它会将他们发送到图像页面。现在,我想要统计该超链接的点击次数,并将总次数(递增)显示到另一个页面。我尝试过的是下面的代码,它应该计算点击次数,但我收到错误:

eslint:无返回分配 - Return 语句不应包含 作业。

另外,如果有人可以帮我解决这个问题,是否也可以在另一个页面中显示该计数?如果我刷新该页面,计数不会重置?

我将发布部分脚本供您审阅。预先非常感谢您。祝你有美好的一天!

//This will create that link into a page
let link = document.createElement("a");
            var linkText = document.createTextNode(images2[j].name);               
            link.appendChild(linkText);
            link.title = images2[j].name;
            link.href = images2[j].image_src;
            link.target = '_blank';
            document.querySelector('[class^="testui_tabs-content"]').prepend(link);

let eventListenerFunction = (e) => {log('A link was clicked'); }
            document.querySelectorAll('[class^="testui_tabs-content"]').forEach(linkText => {
            link.addEventListener("click", eventListenerFunction );
});


//This will log user clicks to a Slack Channel

function log(msg){

const ticketurl = window.location.href;
const url = 'https://hooks.slack.com/workflows/Test';
const headers = {'Content-Type': 'application/x-www-form-urlencoded'};

let data = `${msg}, ${ticketurl}, ${new Date().toISOString()}, v${GM_info.script.version}`;

data = {'Content': data};
request('POST', url, '', headers, data);

};

//Counts the click on the hyperlink with error
var count = (function () {        
var counter = 0;
return function () {return counter +=1;}
    
})();

function displaycount(){
document.getElementById("log").innerHTML = count();

})();
javascript count
1个回答
0
投票

首先,解决您的

eslint
错误 -

如你所见

return counter +=1
。这意味着您将
counter
指定为
counter + 1
然后返回该值。如果您不希望出现此错误,您只需不分配即可:

counter += 1;
return counter;

现在您想将值保存到另一个页面吗?有很多方法可以跨页面和刷新后保存数据。了解

localStorage

© www.soinside.com 2019 - 2024. All rights reserved.