我试图在lodash中使用一次函数,如下所示:
_.once(pageTwoSegmentEvent);
_.once(() => {
pageTwoSegmentEvent();
})
我也尝试过从lodash仅导入一次函数,而不是_
once(pageTwoSegmentEvent);
once(() => {
pageTwoSegmentEvent();
});
但是函数pageTwoSegmentEvent实际上从未被调用。但是,如果我删除了它包装的一次函数,只是像平常一样调用它,那么它就起作用了,但是却被调用了太多次。有谁知道如何从lodash获得一次功能?
答案 0 :(得分:1)
_.once
返回一个函数,因此您必须调用返回的函数
尝试做
_.once(pageTwoSegmentEvent)();
(请注意最后的括号)
答案 1 :(得分:1)
您不会像这样使用_.once
。您使用_.once
返回的新函数。
function foo() {
console.log("foo");
}
const oncedFoo = _.once(foo);
oncedFoo();
oncedFoo();
oncedFoo();
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.core.min.js"></script>