首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解Javascript PubSub

理解Javascript PubSub
EN

Stack Overflow用户
提问于 2012-12-05 15:18:03
回答 2查看 2K关注 0票数 1

我试着用一个非常简单的例子来理解PubSub。在我的小提琴中,我有一个简单的input元素。如何使用输入字段的值更新我的model.prop?Fiddle

代码语言:javascript
复制
<button>update</button>
<input type="text" value="10" /> <br />
<label></label>​

var model = function(){
    var p1 = $('input').val();
    return {
        prop: p1             
    }        
}();

$('button').click(function(){
    $('label').text(model.prop)      
})
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-05 15:28:22

试试这个:

代码语言:javascript
复制
$(function(){

    var model = function(){
        return {
            prop: function () {
                return $('input').val();
            }                
        }        
    }();

    $('button').click(function(){
        $('label').text(model.prop)      
    })


})​

这之所以有效,是因为不是为prop属性定义标量值,而是定义一个函数并获得结果。因此,每次调用该属性时,都会使用文本字段中的值动态更新该属性。参见http://jsfiddle.net/CHvFk/4/。​

票数 0
EN

Stack Overflow用户

发布于 2012-12-05 17:10:08

我不认为这是发布/子模式的示例,但请查看以下代码片段:

代码语言:javascript
复制
var model = (function() {
    var inp = $('input');
    return {
        getProp: function() {
           return inp.val();
        }
    };
})();

$('button').click(function(){
    $('label').text(model.getProp());
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13718165

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档