点击这里到 AnuglarJS 的官网查看官方提供的获得 ngRoute 的方法。
以下是使用 npm 获得 ngRoute 的方法:
也可以指定版本号:
X.Y.Z 是版本号,用你想要的版本号替换它即可。
首先当然是要将获得的 ngRoute 的 js 文件引入到页面中,它必须在 AngularJS 的 js 文件之后引入。
最终我们的 HTML 文件应该是这样的:
在网页中放了两个 a 标签。注意 a 标签的 href 属性,是以“#”开头的,表示它不会真正跳转到另一个页面,只是在当前网页内导航。但我们的网页中并没有接收该导航的锚点,因此点击它之后网页不会有任何响应。
在网页中查看,点击任何一个任何一个我们放在网页上的超链接:
虽然网页本身没有任何变化,但可以看到浏览器地址栏中的地址发生了变化,“#”后面的(包括“#”在内)就是当前网址的 hash,可通过 location.hash 获得它。
ngRoute 会监视 hash 的改变。
现在,我们希望当 hash 改变之后做点事情。将代码修改成这样:
在浏览器中查看:
点击网页上的链接,我们会发现 ng-view 所在标签的内容在随之改变。
可以在模板里使用数据绑定。要用到数据绑定,一般就需要 Controller。将代码改成这样:
在浏览器中查看,可以发现数据能成功绑定:
现在,我需要给商品列表添加几个商品,点击某个商品后,展示该商品的详情:
很多时候(比如模板内容比较多的时候),我们并不希望将模板内容直接写在一个变量中,而是将它写在模板文件里。
创建一个模板文件,命名为“detail.html”:
然后,将路由配置中的 '/detail/:id' 修改为: