hbt*_*hbt 4 javascript namespaces
我正在研究骨干应用程序.
我在不同的文件中构建了我的模型+集合+视图.
这意味着像function() { // all my code }() 这样的解决方案
不适用
我添加了命名空间,例如
App.ModelName App.Views.ViewName etc.
当我在同一名称空间内时.我怎么能避免重复它.即当我在App.Views.ViewName中定义的函数时,如何调用ModelName
目前我不断重复完整的字符串即App.XXXX
谢谢
你有几个选择:
1)在每个函数中创建一个局部变量:
App.ModelName.myFunction = function() {
var model = App.ModelName;
// then you can reference just model
model.myFunction2();
}
Run Code Online (Sandbox Code Playgroud)
2)在每个文件范围中创建一个局部变量:
(function() {
var model = App.ModelName;
model.myFunction = function() {
// then you can reference just model
model.myFunction2();
}
// other functions here
})();
Run Code Online (Sandbox Code Playgroud)
3)使用以下值this:
App.ModelName.myFunction = function() {
// call App.ModelName.myFunction2() if myFunction() was called normally
this.myFunction2();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |