问题标签 [canjs-routing]

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 回答
623 浏览

javascript - 在 CanJS 中使用 can.Control.route 定义两个独立的路由器

我在不同的 JS 文档中定义了两条路由,尽管它们都包含在同一个 HTML 文件中。路线 1 如下所示:

另一个是这样的:

当我浏览到 #!receipts/1 时,Receipts 和 Invoices 都被实例化了。为什么会这样,我该如何解决?

0 投票
2 回答
304 浏览

routes - 如何定义一个catch all路由来处理can js中的404?

在 can.js 中定义处理 404 的全部路由的正确方法是什么,以便首先检查所有正确的路由?如果不匹配,这条路线将捕获它,我可以显示 404 消息。

0 投票
1 回答
1125 浏览

javascript - 如何在 CanJS 中实现路由器

我正在使用https://github.com/thinkadoo/Projects应用程序的帮助。在这个的帮助下,我构建了一个类似的应用程序。我的应用程序使用的是 d3 图表,而不是这个使用的图表。我的应用程序将路由器初始化为

现在如果我想实现路由器那么应该做哪些改变?这是我的 JSFiddle 与这两种实现。第一个正在工作。但是我初始化路由器的后面部分似乎不起作用。 http://jsfiddle.net/sweety1112/YMAjm/

有人能帮我吗。

0 投票
1 回答
423 浏览

javascriptmvc - CanJS url 改回 #! 何时执行 can.route.ready(true)

代码在这里:http://jsfiddle.net/cTpPx/,但在这里查看实时示例http://fiddle.jshell.net/cTpPx/show/,因为我希望你观察 url 的变化。

访问此页面时请禁用Chrome缓存(在内置Chrome调试器工具中勾选相关框,测试时不要选择调试器)

当您打开页面时,您会看到 hastag#!latest按预期更改,但在can.route.ready(true)执行时,它又变回#!空路由。为什么会有这种奇怪的行为?

但是,当您有此页面的缓存时,它将起作用。

0 投票
1 回答
406 浏览

javascript - canjs:触发当前页面的路由事件

我有一个看起来像这样的 can.Control:

如果当前页面是 {page: "home", type: "test"},则不会调用 "route" 回调。

无论我当前在哪个页面上,如何触发路由事件?

我的想法......
我可以this.route()直接打电话,但是我必须处理更改 URL,这使得它不是一个好的解决方案。

0 投票
1 回答
752 浏览

javascript-framework - CanJS multiple page app

The tutorials and example I've seen are all single page application.

Can anyone give an idea or point to a resource showing how a multiple page app can be developed with CanJS?

0 投票
2 回答
1543 浏览

javascript - Location.hash 返回空字符串

我目前正在为我的 Web 应用程序使用 jQuery、Twitter Bootstrap 和 CanJS。我正在尝试使用 CanJS 实现路由。我正在使用 Bootstrap 的选项卡,当我单击一个选项卡时,它应该会带上 #tabSearch、#tabUser 或 #tabPermissions,但哈希返回的是一个空字符串。我究竟做错了什么?

我正在使用它来更改标签:

这是 HTML 部分:

0 投票
1 回答
131 浏览

canjs - js可以延迟路由匹配/手动触发调度吗?

我有一个这样的控件设置:

  1. 渲染一个异步加载的视图。
  2. 视图的数据也是异步加载的。
  3. 监听路由变化。其中一个路由处理程序显示一个模式,其中包含在步骤 2 中加载的模型的详细信息。

问题是用户可能会到达一个页面,该页面有一个指向模型的路由,该路由在控件初始化时不可用,因此显然没有加载模式。

如何在视图渲染后再次触发 distcher 或让控制器遍历路由?

0 投票
2 回答
106 浏览

javascript - can.routing :触发从 #!/foo/bar 到 #!/foo 的更改

我想了解 CanJS 的路由。到目前为止,我已经设置了以下路线。

我还没有设置监听器,因为我只是在控制台中尝试这个。以下工作正常:

但是在我这样做之后,我想触发一个事件在层次结构中“向上”,回到 #!/plant/1 级别。我试过做can.route.attr({plant : 1, day : undefined}),但没有做任何事情。can.route.attr({plant : 1, day : null})刚刚导致#!plant/1/day/null

那么我如何“重置”路线以现在“知道”关于今天是哪一天的任何信息?

0 投票
3 回答
132 浏览

javascript - 如何使用 {can.route} 监听空白路由并做出反应?

我想用 CanJS 设置路由,以便根据我点击的 url,设置一些相应的控件。我的问题是试图找到一种方法来表达要在控件中侦听的默认路由:“如果没有匹配,则执行此操作”。有什么建议吗?

到目前为止,这是我的代码。似乎适用于 and 之类的网址/#!/plant/1/day/3/#!/plant/1但不适用于/#!or/

PS我实际上通过这样做使用Can.Control.route插件来做到这一点:

但是路由插件似乎既设置路由又对它们做出反应,我想知道如何在没有特定插件的情况下做到这一点。