Javascript 在函数调用中使用()时出错
我正在试验Javascript 在函数调用中使用()时出错,javascript,Javascript,我正在试验nicEdit,一个WYSIWYG编辑器() 它的使用非常简单。只需在代码中添加以下两行 <script src="http://js.nicedit.com/nicEdit-latest.js" type="text/javascript"></script> <script type="text/javascript">bkLib.onDomLoaded(nicEditors.allTextAreas);</script> 似乎我可
nicEdit
,一个WYSIWYG
编辑器()
它的使用非常简单。只需在代码中添加以下两行
<script src="http://js.nicedit.com/nicEdit-latest.js" type="text/javascript"></script>
<script type="text/javascript">bkLib.onDomLoaded(nicEditors.allTextAreas);</script>
似乎我可以将配置选项传递给编辑器-
我想通过向allTextAreas
传递配置对象来调用它。但是当我通过添加({someProperty:someValue})
调用alltextarea
时,控制台中会出现错误
nicEdit-latest.js:8 Uncaught TypeError: bkLib.domLoad[i] is not a function
at HTMLDocument.domLoaded (nicEdit-latest.js:8)
domLoaded @ nicEdit-latest.js:8
为什么使用
()
会产生错误?看起来它需要一个函数,请尝试包装它:
bkLib.ondomload(()=>nicEditors.allTextAreas({someProperty:someValue}))
说明
bkLib.ondomload
接受回调函数
之所以有效,是因为它是一个函数,但在调用它时,您将无法传递自定义参数nicEditors.allTextAreas
之所以有效,是因为它将()=>nicEditors.alltextaries({someProperty:someValue})
包装到另一个函数中,当调用它时,nicEditors.alltextaries
被传递到其中{someProperty:someValue}
不起作用,因为它立即调用该函数,解析它返回的内容并将其传递到nicEditors.allTextAreas({someProperty:someValue})
。我想这不是你想要的bkLib.onDomLoaded
allTextAreas
传递函数,但allTextAreas()
传递函数执行的结果,因此代码不起作用吗?@ManuChadha我更新了答案并试图解释。请原谅我的英语:p
nicEdit-latest.js:8 Uncaught TypeError: bkLib.domLoad[i] is not a function
at HTMLDocument.domLoaded (nicEdit-latest.js:8)
domLoaded @ nicEdit-latest.js:8