我试图使用Require.js模块化JavaScript应用程序。我想弄清楚如何处理应用程序中使用的全局变量。我读过的所有内容都表明,Require.js的要点之一就是摆脱全局变量。反正我有一个互动这样的:Require.js如何处理全局变量?
function myFunction()
{
// Access some dynamic variables here
}
$('#myButton').on('click', myFunction());
mySettings = {};
$('#myForm').on('submit', function()
{
mySettings.someSetting = "someValue";
$.ajax(....) // Send the mySettings to some PHP script
}
所以总结起来,应用程序是交互式的,几个控件和事物的用户在页面上确实有访问全局可访问的变量和价值观,它必须是能够与他们互动和做些事情。
没有全局变量,我该怎么做?
如果页面上的不同事件需要以不同方式处理设置会怎么样?也许点击按钮触发ajax发送设置的地方。也许页面上的其他元素与相同的设置值完全不同。我需要为需要发生的每个不同行为设置不同的模块吗? –
另外,以上定义需要关于onclick事件(或使用它的任何交互式事件)在哪里?为什么它定义()而不是require()? –
按顺序回答你的问题...... 1.我在你描述的内容中没有读到任何内容,它会强制使用不同的设置模块来执行不同的操作。我会编辑答案。我假设你的问题中的代码将在一个模块中。它可以和'require([“settings”],function(settings){'。 – Louis