AngularJS 单页面

单页面(Single Page Application)简称 SPA,是通过异步实现的

//监听 hash 值的变化 从 # 算锚点 锚点之后的是 哈希值
window.addEventListener('hashchange',function(){
    //获取 hash 值,用 Location 
    var hash = location.hash;
    //去掉 前面的 #
    hash = hash.slice(1);
    //ajax 异步请求
    var xhr = new XMLHttpRequest();
    //创建链接
    var url = 'single.php?hash=' + hash;
    xhr.open('get',url,true);
    xhr.send();
    xhr.onreadystatechange = function(){
        if(xhr.readyState == 4 && xhr.status == 200){
            var res = xhr.responseText;
            document.querySelector('.content').innerHTML = res;
        }
    }
})

自定义服务
factory 与 service 的区别

factory 是 类似字面量方式创建对象
var person = {};
app.controller('myController',['myFac','myFac2','myServ',function(myFac,myFac2,myServ){
    myFac.show();
    myFac2();
}])
app.factory('myFac',function(){
    function show(){
    }
    return {
        show:show
    }
})
app.factory('myFac2',function(){
    return function(){
        alert('show2');
    }
})
service 是构造函数方式创建对象
var person = new Person();
app.service('myServ',function(){
    this.show3 = function(){
        alert('show3');
    }
})

你可能感兴趣的:(AngularJS 单页面)