100Uncaught ReferenceError: startCase is not defined
100Uncaught ReferenceError: startCase is not defined
我一直在尝试在 Meteor js 中使用 lodash.js 并且在这方面需要帮助。我已经尝试了所有将外部文件附加到 meteor 的方法,但仍然出现相同的错误。
我有这个 dropdown with search on codepen 我想在模板中使用。我今天已经在这上面工作了 8 个多小时,但还没有弄清楚该怎么做。另外,当附加外部 js 文件的 url 不起作用并且错误仍然存在时,我将这个包添加到 Meteor。这是我的实现:
<template name="multiselect">
<div class="instructions">(Click to expand and select states to filter)</div>
<div class="dropdown-container" style="width: 100%;">
<div class="dropdown-button noselect">
<div class="dropdown-label">States</div>
<div class="dropdown-quantity">(<span class="quantity">Any</span>)</div>
<i class="fa fa-filter"></i>
</div>
<div class="dropdown-list" style="display: none;">
<input type="search" placeholder="Search states" class="dropdown-search"/>
<ul></ul>
</div>
</div>
</template>
这是我不断收到的错误:
VM31646:100Uncaught ReferenceError: startCase is not defined(anonymous function) @ VM31646:100_.each._.forEach @ underscore.js?hash=cde485f…:149(anonymous function) @ VM31646:99DOMRange._insertNodeWithHooks @ blaze.js?hash=f33d3df…:407Blaze._DOMRange._insertNodeWithHooks @ client.coffee:17DOMRange._insert @ blaze.js?hash=f33d3df…:376DOMRange.attach @ blaze.js?hash=f33d3df…:453Blaze._DOMRange.attach @ client.coffee:57DOMRange._insert @ blaze.js?hash=f33d3df…:371DOMRange.attach @ blaze.js?hash=f33d3df…:453Blaze._DOMRange.attach @ client.coffee:57Blaze.render @ blaze.js?hash=f33d3df…:2373_render @ kadira_blaze-layout.js?hash=dbd1396…:204(anonymous function) @ kadira_blaze-layout.js?hash=dbd1396…:77_.extend.withValue @ meteor.js?hash=27829e9…:1077(anonymous function) @ meteor.js?hash=27829e9…:464(anonymous function) @ meteor.js?hash=27829e9…:1105onGlobalMessage @ meteor.js?hash=27829e9…:401
即使不在 Meteor 中使用也能正常工作。
我怀疑您的 Meteor 项目中有 underscore
库,它与 lodash 具有相同的“_
” shorthand 并覆盖了它。解决这个问题的一种方法是使用 meteor-lodash 包,它允许您像这样调用 lodash
函数:
lodash.each(usStates, function(s) {
s.capName = lodash.startCase(s.name.toLowerCase());
$('ul').append(stateTemplate(s));
});
对于任何正在寻找解决方案的同一个问题,我在遵循另一个 post 中的示例后遇到了同样的问题。经过挖掘,我终于想到我需要使用“_”。在函数调用之前。
我之前的代码(导致错误)是:
"Client: " startCase(camelCase(ckifdefined(idata.name))) + "<br>"
固定码:
"Client: " + _.startCase(_.camelCase(ckifdefined(idata.name))) + "<br>"
我一直在尝试在 Meteor js 中使用 lodash.js 并且在这方面需要帮助。我已经尝试了所有将外部文件附加到 meteor 的方法,但仍然出现相同的错误。
我有这个 dropdown with search on codepen 我想在模板中使用。我今天已经在这上面工作了 8 个多小时,但还没有弄清楚该怎么做。另外,当附加外部 js 文件的 url 不起作用并且错误仍然存在时,我将这个包添加到 Meteor。这是我的实现:
<template name="multiselect">
<div class="instructions">(Click to expand and select states to filter)</div>
<div class="dropdown-container" style="width: 100%;">
<div class="dropdown-button noselect">
<div class="dropdown-label">States</div>
<div class="dropdown-quantity">(<span class="quantity">Any</span>)</div>
<i class="fa fa-filter"></i>
</div>
<div class="dropdown-list" style="display: none;">
<input type="search" placeholder="Search states" class="dropdown-search"/>
<ul></ul>
</div>
</div>
</template>
这是我不断收到的错误:
VM31646:100Uncaught ReferenceError: startCase is not defined(anonymous function) @ VM31646:100_.each._.forEach @ underscore.js?hash=cde485f…:149(anonymous function) @ VM31646:99DOMRange._insertNodeWithHooks @ blaze.js?hash=f33d3df…:407Blaze._DOMRange._insertNodeWithHooks @ client.coffee:17DOMRange._insert @ blaze.js?hash=f33d3df…:376DOMRange.attach @ blaze.js?hash=f33d3df…:453Blaze._DOMRange.attach @ client.coffee:57DOMRange._insert @ blaze.js?hash=f33d3df…:371DOMRange.attach @ blaze.js?hash=f33d3df…:453Blaze._DOMRange.attach @ client.coffee:57Blaze.render @ blaze.js?hash=f33d3df…:2373_render @ kadira_blaze-layout.js?hash=dbd1396…:204(anonymous function) @ kadira_blaze-layout.js?hash=dbd1396…:77_.extend.withValue @ meteor.js?hash=27829e9…:1077(anonymous function) @ meteor.js?hash=27829e9…:464(anonymous function) @ meteor.js?hash=27829e9…:1105onGlobalMessage @ meteor.js?hash=27829e9…:401
即使不在 Meteor 中使用也能正常工作。
我怀疑您的 Meteor 项目中有 underscore
库,它与 lodash 具有相同的“_
” shorthand 并覆盖了它。解决这个问题的一种方法是使用 meteor-lodash 包,它允许您像这样调用 lodash
函数:
lodash.each(usStates, function(s) {
s.capName = lodash.startCase(s.name.toLowerCase());
$('ul').append(stateTemplate(s));
});
对于任何正在寻找解决方案的同一个问题,我在遵循另一个 post 中的示例后遇到了同样的问题。经过挖掘,我终于想到我需要使用“_”。在函数调用之前。 我之前的代码(导致错误)是:
"Client: " startCase(camelCase(ckifdefined(idata.name))) + "<br>"
固定码:
"Client: " + _.startCase(_.camelCase(ckifdefined(idata.name))) + "<br>"