avalon 路由问题
1, 直接使用avalon的 amd加载器, 可以不需要 require.js
2, 配置baseUrl 路径, 这个一定要在 js所在的目录, 而不是jsp所在的目录, 如果js 和jsp分开
可以用 window.location.protocol + "//" + window.location.host 来获取网站资源路径
require 和 define 的依赖路径, 都是在baseUrl目录下面去找的
3, avalon 的 define 依赖项不执行, 可能是因为没有过 require一次,
所以在页面上应该先调用一次 require('../router.js' ,function(router){ router.init() } )
4, 路由去下载templateUrl 的路径是根据 ajax去获取的, 在获取的时候没有根据 baseUrl 去组装
js是根据 baseUrl 去组装下载
这样的话, 就会根据浏览器的url去获取资源, 会可能出现错误, 因为html一般也和js一个地方
所以templateUrl 需要重新组装
avalon.state("sponseMeet", {
url: "/",
abstract: true, // 抽象状态,不会对应到url上
views: {
"": {
templateUrl: baseUrl + "/html/sponseMeet.html", // 指定模板地址
controllerUrl: "./js/sponseMeet.js" // 指定控制器地址
}
}
})
5, 这里的 sponseMeet 表示路由的名称
url:"/" 表示这个路由在浏览器的显示形式 是 这样的 www.aa.com.. #!/
在路由需要 avalon.router.go("sponseMeet") 才会进入这个页面
avalon.history.start({
// basepath: "/mmRouter",
fireAnchor: false
})
//go!!!!!!!!!
avalon.scan();
avalon.router.errorback = function() {avalon.router.go("sponseMeet");}
avalon.router.go("sponseMeet");
abstract: true 表示抽象模板, 不能被激活(除非这个view是根路径), 但他的子模板可以被激活,
抽象模板可以提供一个多个有名的模板, 或者它可以传递作用域的变量给子模板
所以在根目录之外的路由, 如果也写abstract 为true, 是不会跳转的
6, avalon.router.errorback = function() {avalon.router.go("sponseMeet");}
这个配置是防止浏览器url被改, 或者出错的时候 , 直接跳到首页 , sponseMeet 这里就是首页的东西
7, smartGrid 参数传值挺麻烦,
opertes: function(vmId, field, index, cellValue, rowData) {
var tags = '<a href="javascript:;" ms-click="removeMember(\''+ rowData.phone +'\')" >移除</a> ';
var opyin = rowData.speakStatus == 'Speak' ? '开启静音' : '取消静音'
// 使用JSON.stringify 报错, 使用 ',' 报错
tags += '<a href="javascript:;" ms-click="openQuiet(\''+ rowData.phone + ' ' + rowData.speakStatus +'\')" >'+opyin+'</a> ';
return tags;
}
avalon 路由问题的更多相关文章
- avalon.js路由
之前自己写了一个AJAX加载页面的方法:有时候一个页面里面会分区域加载不同的东西(div,html),但是IE的回退按钮,就失去任何意义了: 这两天研究了一下avalon.js的路由: 需要准备: 1 ...
- 前端神器avalonJS入门(三)
本章将介绍如何使用avalon来实现前端路由功能. 我们需要用到两个avalon路由配套模块—— mmHistory.js 和 mmRouter.js .其中mmHistory是用于历史管理,它会劫持 ...
- avalonJS入门
前端神器avalonJS入门(一) posted @ 2014-10-31 17:44 vajoy 阅读(8759) 评论(42) 编辑 收藏 avalonJS是司徒正美开发和维护的前端mvvm框 ...
- MVC、MVP、MVVM、Angular.js、Knockout.js、Backbone.js、React.js、Ember.js、Avalon.js、Vue.js 概念摘录
注:文章内容都是摘录性文字,自己阅读的一些笔记,方便日后查看. MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是 ...
- 前端展望:取avalon,弃angular
打给比方,如果说angularJS是剑,那么avalon就是匕首.匕首比剑更易学,更快,更适合快速作战... 我们还是直接来实际的吧: 目前项目开发中有以下几个通用需求: 有前端路由系统,用来划分 ...
- avalon学习笔记
背景: 刚刚到一家新的公司,我新接手的项目采用的mvvm框架是avalon,当然我以前没有学过angular,但是用过react,所以对于这类框架应该不算陌生.但毕竟是一个新的框架,所以还是先学起来, ...
- 用avalon实现一个完整的todomvc(带router)
照着todomvc官网的例子,做了一个avalon版的todos,功能全都有了,而且加了router模块,比司徒大大写的都完善(≧▽≦)/~ js文件整整100行,初次使用avalon,书写过程中绕了 ...
- webpack+avalon+mmState打包方案
终于到讲授如何整合avalon社区这个最强大的组件,基于状态机的路由系统了! 基于状态机的路由系统,据我所知,目前世界上只有三款,angular社区的ui-router, 网易出品的stateman, ...
- webpack打包avalon+mmRouter
这是上一篇<webpack打包avalon+oniui+jquery>的姐妹篇,avalon 的高级应用篇.大家要知道,现在最流行的网页架构就是SPA,SPA能提高用户体验.用户许多数据都 ...
随机推荐
- MVC ---- 标准查询运算符
标准查询运算符:定义在System.Linq.Enumerable类中的50多个为IEnumerable<T>准备的扩展方法,这些方法用来 对它操作的集合进行查询筛选. 筛选集合Where ...
- 通过 sqldf 包使用 SQL 查询数据框
在前面的章节中,我们学习了如何编写 SQL 语句,在关系型数据库(如 SQLite 和MySQL )中查询数据.我们可能会想,有没有一种方法,能够直接使用 SQL 进行数据框查询,就像数据框是关系型数 ...
- STL_容器使用时机
1. 来自教程: ◆ Vector的使用场景:比如软件历史操作记录的存储,我们经常要查看历史记录,比如上一次的记录,上上次的记录,但却不会去删除记录,因为记录是事实的描述. ◆ deque的使用场景: ...
- RabbitMQ入门_15_访问控制
参考资料:https://www.rabbitmq.com/access-control.html A. 核心概念 Virtual Host:虚拟主机为 RabbitMQ 中的资源提供了逻辑分组与隔离 ...
- oracle 临时表的使用
在oracle中,临时表分为会话级别(session)和事务级别(transaction)两种. 会话级的临时表在整个会话期间都存在,直到会话结束:事务级别的临时表数据在transaction结束后消 ...
- 微信公众号菜单添加小程序,miniprogram,pagepath参数详解,php开发公众号
随着微信小程序功能的开发, 已经可以跟公众号打通了, 主要有两种方式: 1) 在公众号文章中插入小程序 2) 在公众号菜单中添加小程序 第一种方式, 子恒老师在前面的课程已经详细介绍过, 今天来讲第二 ...
- 用EL時(el-api.jar,el-ri.jar ),要設isELIgnored="false"
用EL時(el-api.jar,el-ri.jar ),要設isELIgnored="false" 否则jstl标签不显示. 加上 <%@page isELIgnored="false ...
- English trip -- Phonics 2 元音字母a
xu言: 欲速则不达,如果这是你生命中最后一天.你还愿意花这么多精力继续坚持你现在做的事吗?如果答案是否定的,那么你需要改变了! What makes a word? 单词构成 Word 单词: ...
- 5-13 Rspec实际; validates处理Errors, TDD, 单元测试和验收测试,capybara
validates处理验证错误:详见ActiveModel::Errors文档 一,errors ActiveModel::Errors的实例包含所有的❌.每个错误:key是每个属性的name, va ...
- android--------ListView和ExpandableListView的侧滑删除操作
本案例主要实现了ListView和ExpandableListView的侧滑删除操作功能 效果图: ListView的Adapter类 private class SlideAdapter exten ...