gpt4 book ai didi

model-view-controller - Dojox/mvc/at 模型范围

转载 作者:行者123 更新时间:2023-12-05 01:24:31 25 4
gpt4 key购买 nike

在 dojox/mvc 包中使用有状态对象时,声明性示例似乎在全局命名空间中具有目标模型(没有使用“var”关键字定义)。通过污染全局命名空间,这违反了良好 Javascript 设计的一般做法,更不用说使不同模型的使用变得困难和困惑了。

我的问题是,声明式 at() 的范围是什么?如何使用位于特定上下文/范围内的模型?

http://dojotoolkit.org/reference-guide/1.9/dojox/mvc.html#id6

最佳答案

在哪里dojox/mvc/at API 通常用于 data-dojo-props .关于在那里设置“范围”,我想到了三件事:

  1. 正在运行 Dojo parserparser.parse(rootNode, {propsThis: scopeObj});你可以制作thisdata-dojo-props指定的对象。这样data-dojo-props="widgetProp: at(this, 'scopeObjProp')"指向 scopeObj 中的属性.
  2. widgets-in-template , data-dojo-props="widgetProp: at(this, 'widgetsInTemplateProp')"指向 widgets-in-template 实例中的一个属性。
  3. Relative data binding使 target DOM 中的小部件中的属性通过“rel:”特殊语法引用。将对象设置为 target那里的属性(property),例如registry.byId("scopeWidget").set("target", {First: "John", Last: "Doe"});在下面的示例中,将填充 <input> 中的值:

    <script type="dojo/require">at: "dojox/mvc/at"</script>
    <div id="scopeWidget"
    data-dojo-type="dijit/_WidgetBase"
    data-dojo-props="target: {}">
    <div>
    First:
    <input data-dojo-type="dijit/form/TextBox"
    data-dojo-props="value: at('rel:', 'First')">
    </div>
    <div>
    Last:
    <input data-dojo-type="dijit/form/TextBox"
    data-dojo-props="value: at('rel:', 'Last')">
    </div>
    </div>

希望这对您有所帮助。

最好的,晃

关于model-view-controller - Dojox/mvc/at 模型范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17755632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com