Javascript - Web 应用程序结构
Javascript - web application structure
我在管理Javascript应用程序各部分之间的数据时遇到问题。我试图坚持使用"MVC"模式,所以用MVC术语来说,我不能让我的一些"C"(控制器)函数访问"M"(模型)给出的数据。具体来说,我不能在不使数据全局的情况下使事件函数访问数据(我想尽量避免)。
一个虚构的情况只是为了告诉你我的意思:
.HTML:
<body>
<div onclick="func()"></div>
</body>
.JS:
var Data = function(num) {
this.num = num;
}
window.onreadystatechange = function() {
var data = new Data(5);
}
function func() {
//How do i access the object "data" from here?
}
问题是:如何使事件处理程序访问数据?
var Data = function(num) {
this.num = num;
}
var data;
window.onreadystatechange = function() {
data = new Data(5);
}
function func() {
//data.num
}
您必须在函数可访问的范围内声明数据
如果你担心全局变量,你可以这样做
var service = {};
(function(service) {
var Data = function(num) {
this.num = num;
}
var data;
window.onreadystatechange = function() {
data = new Data(5);
}
service.func = function func() {
//data.num
}
})(service);
//call the function
service.func();
这将在自执行闭包中调用它,这将阻止变量进入全局范围。可以传入服务实例并将 func 方法附加到该实例以便能够调用它。Jquery 插件通常遵循这种模式。
相关文章:
- Redux应用程序结构-在哪里放置服务/业务逻辑
- 使用angularjs和node.js时的Web应用程序文件夹结构
- 应用程序的最佳目录结构 - 节点 + 道场:这行得通吗?
- TypeScript 1.8,多个.ts文件中的单个文件-应用程序结构
- Backbone.js应用程序使用CommonJS结构与node.js和客户端协同工作
- 淘汰js应用程序的正确文件结构是什么
- Web应用程序的体系结构/设计,对另一台服务器进行了大量Ajax调用
- RESTful Web 应用程序中的客户端服务器体系结构
- 如何在node.js应用程序中的mongodb中按层次结构顺序插入数据
- 骨干.js如何跟踪登录用户状态和有关应用程序结构的一般建议
- 我的原生脚本应用程序的最佳结构
- 在 AngularJS 应用程序中形成适当的结构
- 关于具有用户身份验证的 Web 应用程序的结构
- 网站中的单页体系结构或应用程序在 html 导航中使用 servlet 而不打开新页面
- Javascript - Web 应用程序结构
- Node.js & Express - 应用程序结构的全局模块和最佳实践
- 骨干.js : 固定侧板的结构应用程序
- RESTful Backbone 应用程序中 JSON 的预期结构是什么?
- 如何规划新 JS 应用程序的结构
- 全栈应用程序Gulp构建的输出/路径/结构策略