问题标签 [chaplinjs]

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.

0 投票
1 回答
1420 浏览

coffeescript - 早午餐`require`未定义

我有一个在前端使用早午餐、卓别林和咖啡脚本的应用程序。Brunch 构建应用程序时没有任何错误。但是,当我这样做brunch watch --server并导航到时http://localhost:3333,会生成错误并且页面永远不会加载。

这以前工作得很好。diff显示存储库中没有会导致行为变化的变化。当我了解开发人员时,我还检查了前端代码的早期版本。服务器正在工作,但它们都给出了相同的错误。我尝试删除构建的代码并完全重建,但这也无济于事。

我想这一定是我在一个未跟踪的文件中所做的事情,但对于我的生活,我找不到它。这是 chrome 错误消息的输出:

中的违规行index似乎是

这条线与其他类似配置的完美运行的项目没有变化。我认为这可能是愚蠢的,但它只是模糊到网络搜索没有太大帮助。希望其他人遇到过这个问题。

我能做些什么来诊断问题或解决这个问题?

0 投票
1 回答
641 浏览

backbone-views - 卓别林区域与容器和子视图

在创建子视图时,我很难理解区域和容器之间的区别。在父级中创建子视图时,一个在另一个上的用例是什么?

其次,将事物注册为子视图如何与这两个选项结合使用?无论或仅在使用容器时都需要这样做吗?

0 投票
1 回答
334 浏览

backbone.js - 使用 ChaplinJs 重定向到页面和锚点

我有一个页面/hello,其中有一个链接:

这将重定向到/goodbye. 但我也希望它使用锚点,比如/goodbye#message

我试过做:

但是当我点击它时,它会将页面重定向到/goodbye. 看来卓别林正在删除锚。

编辑: 对于我使用车把(带有 chapling 样板)的模板,{{#url}}助手会正确生成链接(cf view-helper.js)。在呈现的页面中,我看到:

但是当我点击它时,它只是将我重定向到/goodbye

任何想法?

0 投票
1 回答
611 浏览

backbone.js - 在 Chaplin.js 中,如何将对象持久化到中介?

我在 Chaplin.js 文档中看到了很多示例,这意味着模型/对象可以通过以下方式持久保存在中介上:

通过https://github.com/chaplinjs/facebook-example/blob/master/coffee/controllers/session_controller.coffee

createUser: (userData) -> mediator.user = new User userData

在我的应用程序中,每当我尝试将用户模型设置为调解器上的属性时,该属性不会在路由之间持续存在。例如,在@onSessionSaveSuccess 中,我将用户分配给中介,但是,在重定向到 DashboardController 并尝试访问 mediator.user 之后,我收到了undefined.

请帮助我了解我是如何滥用这种模式的。谢谢你。

0 投票
1 回答
212 浏览

javascript - 如何重新加载 Backbone 应用程序?

我有 Backbone 应用程序(也在 Backbone 之上使用 Chaplin.js),它与 pushState 一起正常工作。在某些时候,我想检测到应用程序代码已更改并重新加载页面(重新加载应用程序代码)。问题是当用户在“/some/path”中时,我想重新加载主干应用程序并使其指向“/”。到目前为止,我尝试过:

当用户在/some/path-> location.reload()-> 它重新加载应用程序但仍然在'/some/path'

当用户在/some/path-> location.href = location.origin-> 它重新加载应用程序但仍然在'/some/path'

我如何才能在/路径(和 clearHistory)中重新加载应用程序?


这已解决 - 使用window.location = '/'

0 投票
1 回答
556 浏览

backbone.js - 如何在不更改路由/操作的情况下更改查询参数?

在我看来,我呈现集合并且我有排序按钮。单击排序按钮时,将使用一些自定义查询参数(如&sort=id+desc)获取集合。它有效,但我还想将 url 查询字符串更改为此查询参数(&sort=id+desc)。问题是它可以工作,但它会重新渲染整个视图,因为路由器只是重定向到不同的操作(实际上是相同的操作但具有不同的查询参数)。

如何在不重新加载视图的情况下更改 url 查询参数并将其添加到历史记录中?

我在我的应用程序中使用 pushState

0 投票
1 回答
57 浏览

backbone.js - 我可以在没有路线的情况下设置卓别林吗?

由于我们计划使用 Chaplin for Mobile 并希望保持轻量级,我们是否可以在没有路由的情况下使用 Chaplin,但手动激活控制器(我们将仅使用单个控制器,但可能使用多个视图)?

这可以通过仅使用调度程序来完成吗?

0 投票
1 回答
37 浏览

chaplinjs - ChaplinJS 集合同步问题

所以我有一个集合,我在应用程序开始时这样获取

在这个家庭控制器接管并将用户带到适当的页面之后,像这样

现在,当我通过 HomeController 访问 PieceView 时,我希望 Chaplin.mediator.styleCollection 应该已经同步,但是在重新加载期间有几次显然集合还没有准备好。所以我输入了一些console.logs,这就是我看到的

console.log Chaplin.mediator.styleCollection 输出(到目前为止一切都很好)

console.log Chaplin.mediator.styleCollection.toJSON() (这就是问题所在)

有什么想法吗?

0 投票
2 回答
224 浏览

google-tag-manager - 带有 ChaplinJS 的谷歌标签管理器

我正在构建一个 chaplinJS 客户端应用程序,并且需要添加谷歌分析的功能。

我想使用 Google Tag Manager (GTM) 并将跟踪代码添加到我的 html 文件中。然后转到 GTM 并设置 PageView 事件标签。

由于某种原因,在初始加载后没有触发任何页面查看事件。GTM 可以与 chaplinJS 一起使用吗?我想象它寻找 url 更改,然后推出通用分析页面查看事件。

有没有其他人这样做过?我想另一条路线可能是更新 application.coffee 并监听“route:match”事件,然后推出浏览量事件。我认为使用 GTM 更容易做到这一点,因为我可以随时添加新标签。

想法?

0 投票
1 回答
121 浏览

backbone.js - Chaplin JS 中的分组集合

我需要从服务器获取对象集合,按关键参数对其进行分组,并对分组值字段求和。相当简单的任务,但我不确定如何在 ChaplinJS 中实现它。我已经设置了集合视图。未分组集合的获取和渲染工作正常。我应该如何实现集合视图的分组和更新?

我从 groupBy 开始,但这并没有做任何事情: