jquery 3.1.1
1.Apresente jquery 3.1.1
2.Introduza <script src="dist/application.min.js"></script>
app.settings({
api: {
location: "http://xxx.xxx.xxx/", //设置api服务器地址
version: 'v1', //设置api版本
versionSendType: 'url', //版本号的发送方式,可能的值 url、headers、param,默认为 url
},
isChangeURL: false //是否开启url自动变更,此选项仅在 server中允许时可以被设置为true
});
As solicitações de API são divididas em dois tipos
Enviar solicitação de obtenção
app.api.get('接口名称', 回调函数);
como
app.api.get('user/get_name', {name: 'testname'}, function(data){
//todo 接口请求成功后的后续操作
});
O código acima enviará a seguinte solicitação
Request URL:http://xxx.xxx.xxx/v1/user/get_name?name=testname
Request Method:GET
Host:xxx.xxx.xxx
Enviar solicitação de postagem
app.api.post(接口名称, 参数, 回调函数);
como
app.api.post('user/set_name', {name: 'testname'}, function(){
//todo 接口请求成功后的后续操作
});
O código acima enviará a seguinte solicitação
Request URL:http://xxx.xxx.xxx/v1/user/get_name
Request Method:POST
Host:xxx.xxx.xxx
Form Data:
name:testname
如果 `versionSendType` 设置为 `param`
mas
Request URL:http://xxx.xxx.xxx/user/get_name?version=v1
hora da postagem
Form Data:
version:v1
如果 `versionSendType` 设置为 `header`
Um parâmetro Api-Version
será adicionado Request Headers
ao enviar a solicitação. Nesse caso, o servidor precisa adicionar Api-Version
ao parâmetro Access-Control-Allow-Headers
nos Response Headers
ou configurá-lo diretamente para *
O carregamento automático inclui HTML, CSS e JS. O carregamento automático ainda usa a tag <a>
por padrão, mas o mecanismo da tag <a>
foi ajustado. Clicar na tag <a>
não salta mais de forma síncrona, mas carrega a página automaticamente de forma assíncrona.
Após carregar com sucesso o HTML ou todo o CSS, o evento de redimensionamento da janela será acionado automaticamente.
A tag <a>
foi estendida com atributos. Os atributos agora são adicionados da seguinte forma:
app
é obrigatório aqui, mas não há necessidade de preencher o valor. a
sem este atributo ainda usam o mecanismo de salto síncrono
href
precisa ser carregado de forma assíncrona com o endereço do arquivo html
container
container id renderizará o conteúdo carregado de forma assíncrona no contêiner especificado.
O endereço do arquivo css que css
precisa para ser carregado de forma assíncrona
endereço do arquivo js
que precisa ser carregado de forma assíncrona
data-obj
precisa ostentar os dados transmitidos pela página
Exemplo de uso
<a
app
container="content"
href="register.html"
css="register.css"
js="register.js"
data-obj='{"user_id": 111}'
>这是一个超连接</a>
Certifique-se de prestar atenção ao uso de aspas simples e duplas para data-obj
Vários css carregam automaticamente css="css1.css|css2.css|css3.css"
Vários js carregam automaticamente js="js1.js|js2.js|js3.js"
Para evitar conflitos de nomenclatura, este js fornece um método para registrar um namespace.
//Suponha que a localização atual de js seja js/a/test.js
app.namespace.register('js.a.test');
Depois disso, você pode usar js.a.test
diretamente
Por exemplo
js.a.test.alert = function(msg){
alert("^_^" + msg + "^_^");
}
js.a.test.isShow = true;
……
Para arquivos js importados de forma assíncrona, o construtor interno será executado automaticamente.
*Para evitar conflitos de nomenclatura em cada arquivo js, é recomendado que cada arquivo js seja fechado ou todas as variáveis e funções usem namespaces
como
//假设当前js文件的文件名是 'js/a/brand.js'
app.namespace.register('js.a.brand'); //注册命名空间
(function(w){
// 构造函数
js.a.brand = function(){
//todo 需要初始化的逻辑
}
// todo 其它的代码逻辑
}(window));
Basta ligar app.back();
MIT
Copyright (c) 2017 writethesky(书天)