Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 余烬观察到的属性,管理模型中的更改_Javascript_Ember.js - Fatal编程技术网

Javascript 余烬观察到的属性,管理模型中的更改

Javascript 余烬观察到的属性,管理模型中的更改,javascript,ember.js,Javascript,Ember.js,我已经创建了一个大纲,概述了一些细节 我的问题是,在不使用Ember数据的情况下,如何在Ember中实现一个可以观察所有绑定的类,并在对模型进行更改时,根据模型对象中数据的键路径将观察到的属性转换为URL。然后,我可以从那里开始 请参阅,因为那里有一个应用程序设置,并且为您准备好了 重述。我试图将钩子连接到模型中,在任何更改时,检测更改了什么,更改数据的关键路径是什么,获取新数据并将关键路径转换为url 我还将在这里提供模型的预览和模型的示例url Obj = Em.Object.create(

我已经创建了一个大纲,概述了一些细节

我的问题是,在不使用Ember数据的情况下,如何在Ember中实现一个可以观察所有绑定的类,并在对模型进行更改时,根据模型对象中数据的键路径将观察到的属性转换为URL。然后,我可以从那里开始

请参阅,因为那里有一个应用程序设置,并且为您准备好了

重述。我试图将钩子连接到模型中,在任何更改时,检测更改了什么,更改数据的关键路径是什么,获取新数据并将关键路径转换为url

我还将在这里提供模型的预览和模型的示例url

Obj = Em.Object.create({
    a: 'a',
    b: 'b',
    c: 'c',
    d: Em.A([
        {
            da: 'da',
            db: 'db',
            dc: 'dc'
        },{
            da: 'da',
            db: 'db',
            dc: 'dc'
        }    

    ])      
});
假设路径Obj.d[0].db使用新数据更新。那么url将是

http://api.domain.com/d/0/db/
一些参考资料对我有所帮助:


你能告诉我们你为什么需要这个吗?我怀疑有更好的方法来设计你想要实现的东西。您是否明确知道您希望事先遵守哪些关键点?也就是说,您是否事先知道这些属性的名称,或者您是否想要一个不那么硬编码的解决方案?我问你,因为你的例子使用了虚拟变量名。我确实知道键名,但我不知道在任何数组中有多少索引,我必须对它们进行计数。一个较少硬编码的解决方案绝对是理想的,因为在我看来,它更具可扩展性。我有一个JSON数据结构,需要通过web套接字与其他用户实时同步node、express、socket.io。很明显,我可以在一段时间后发送整个数据结构,但这样做效率低,并且有更大的冲突可能性。我想为每个字段分配一个唯一的url,以便有效负载从20-80kb的大文档扩展到<1kb。此外,系统需要设计为5000多名同时使用的用户。您是否还希望对象嵌套在数组和对象的任意深度,从而产生api.domain.com/d/0/4/a/nestedkey/等url,或者只是达到了问题中指定的级别?为了澄清这一点,您实际上希望在所有用户之间保持单例JSON对象的同步,并且您正在使用服务器进行同步。所以我说真正的问题是如何确定发生变化的属性的路径,URL的构造与您与Ember的交互方式无关,对吗。?