问题标签 [canjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
model - 从 observable attr 获取对象
我的 JSON 需要一些可观察的。数据如下所示:
}
如何获得类似对象的参数?我不知道 - 参数中有多少 k=>v 或对象。我需要知道 - 参数有变化,我想得到 data.attr('event.1.param') 并得到
可能吗?或者你可以告诉我更简单的方法吗?
routes - 如何定义一个catch all路由来处理can js中的404?
在 can.js 中定义处理 404 的全部路由的正确方法是什么,以便首先检查所有正确的路由?如果不匹配,这条路线将捕获它,我可以显示 404 消息。
javascript - CanJS 模型:attr 函数和嵌套数据
在canJS 中,我可以使用 设置模型属性person.attr('name', 'John Doe');
,但有时该属性包含嵌套数据,因此我需要执行以下操作:
在 canJS 中是否有更短的解决方案?
javascript - JavaScript 模板,为什么这么棒?
我一直在研究 JavaScript 模板库,如dust.js 和其他更广泛的库,如 canJS
在我工作的地方,我们在客户端完成了近 99% 的任何应用程序/站点。目前我只是构建html字符串,注入dom,监听点击/动作,做ajax,从结果中构建更多的html字符串并注入dom等等。
如果你举这个简单的例子。
通过模板可以通过什么方式改进?从我所见,我将不得不适应一种特定的模板语法,这种语法并不比上述更容易阅读或维护。复杂的布局,或者你有递归的场景(列表中的列表不知道它可能有多少层)呢?我觉得模板语法/引擎在某些情况下可能是一个限制因素。
我想将 html 完全从 JS 中提取出来是很好的,但是可以说在 HTML 中使用带有模板语法的脚本标签是不可能的,我并不特别希望模板作为外部文件,我需要执行额外的请求读。
请教育我!
javascript - JavaScriptMVC 和 CanJs 的区别
叫我笨蛋,但我很困惑。它们是否相同,can.js 只是它的继任者?它们似乎共享了很多功能。由于 JavaScriptMVC 没有像 CanJs 那样定期更新,我考虑切换到后者。有没有人有这方面的经验?
javascript - canJS:加载带有关联的模型,但只保存“基础”模型
这是一个演示,如何在 canJS 中加载具有关联的模型(在单个请求中)。我在canJS 的 github repo 中找到了它,here,实际上我不得不稍微重写它才能工作(它已经过时了),但它现在可以工作了。
我的问题是,如果我更改加载的联系人(contact.attr('name', 'Tom');
),然后我想保存它(contact.save();
),那么联系人以及联系人的任务将通过 ajax 发布到服务器,以进行保存。这是合乎逻辑的,因为tasks
是 的一个属性contact
。
我的问题是,我只想要联系人name
,birthday
并id
在更新记录时发布。我可能应该重写该makeRequest
方法,并在发布到服务器之前删除tasks
,但我认为应该有一个更优雅的解决方案。
希望这里有一些 canJS 用户,他们已经处理了这种情况。
javascript - 更多关于canjs模型的restfunctions
有没有办法在模型上添加更多的其余绑定,然后只添加四个 CRUD 函数?
javascript - CanJS 将待办事项存储到文件中
我正在使用具有列表的 CanJS 编写 SPA,用户可以添加列表。我想通过将新添加的项目写入文件来永久存储它。有人能帮我吗?
这会临时保存当前浏览会话的项目。我想永久保存它。
javascript - 在 canJs 中重新打开课程
随着类变得越来越大,它变得越来越难以维护。所以我很想把我的一些课程分成多个文件。在文件中定义类,例如:
然后稍后在一个单独的文件中,我想重新打开这个类,并向它添加新的类方法/属性和原型方法/属性。
这在canJS中可能吗?如果不是,应该有什么可能的解决方法?