首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得钛中Alloy.Models.room_module的属性

如何获得钛中Alloy.Models.room_module的属性
EN

Stack Overflow用户
提问于 2015-04-10 07:09:19
回答 2查看 119关注 0票数 0

这是我的密码:

代码语言:javascript
复制
room_module = Alloy.Models.room_module
console.info "=========room_module======="
console.info room_module
console.info "=========room_module.get room_1======="
console.info room_module.get "room_1"
console.info "=========room_module.room_1======="
console.info room_module.room_1

这是控制台输出:

代码语言:javascript
复制
[iphone, 8.2, 192.168.1.126] =========room_module=======
[INFO] [iphone, 8.2, 192.168.1.126] {
    "room_1": "客餐厅",
    "room_2": "卧室",
    "room_3": "厨房",
    "room_4": "room",
    "room_5": "room",
    "room_6": "room"
}
[INFO] [iphone, 8.2, 192.168.1.126] =========room_module.get room_1=======
[INFO] [iphone, 8.2, 192.168.1.126] 客餐厅
[INFO] [iphone, 8.2, 192.168.1.126] =========room_module.room_1=======
[INFO] [iphone, 8.2, 192.168.1.126]

为什么room_module.room_1不能得到这个值?我想把room_module.room_1展示给我的xml文件。我怎么能这么做?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-11 10:18:51

如您所知,合金模型继承自主干模型。

代码语言:javascript
复制
// Get the value of an attribute.
    get: function(attr) {
      return this.attributes[attr];
    },

当您调用console.info(模型)时,它可能正在执行Model.toJSON (它没有toString方法):

代码语言:javascript
复制
// Return a copy of the model's `attributes` object.
    toJSON: function(options) {
      return _.clone(this.attributes);
    },

我认为有两种可能性:

  1. room_module.attributes['room_1']
  2. room_module.toJSON().room_1

合金文档中,没有任何关于在xml文件中访问模型的声明。您需要从控制器访问它。

票数 1
EN

Stack Overflow用户

发布于 2015-04-11 20:04:20

脊骨js使用属性对象来存储属性。在您的例子中,您需要执行roommodule.get('room1')。为了保持一致,使用get和set而不是通过roommodule.attributes.room1直接访问总是一个很好的实践。

因为它可能会触发模型中的一些事件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29555411

复制
相关文章

相似问题

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