文档章节

Promise 练习

o
 osc_s3ds9mww
发布于 2019/01/27 17:43
字数 269
阅读 23
收藏 0

「深度学习福利」大神带你进阶工程师,立即查看>>>

import { ModelClass } from "engine/injector/Injector";
import { Inject } from "core/injector/Injector";
import { environment } from "engine/env/Environment";
 
@ModelClass
export class ExerciseProxy {
 
private polyfill_suffix : string = "/s17/lib/polyfill/polyfill.min.js" ;
private vue_suffix : string = "/s17/lib/vue/2.2.5/vue.min.js" ;
private vuex_suffix : string = "/s17/lib/vue/plugin/vuex/2.2.1/vuex.min.js" ;
private venus_js_suffix : string = "/s17/lib/venus/2.5.1/venus.min.js" ;
private venus_css_suffix : string = "/s17/lib/venus/2.5.1/css/venus.min.css" ;
 
private initialized : boolean = false ;
 
public startInitialize( completeCbk: ( ) => void): void
{
if ( this.initialized ) {
setTimeout( function () {
completeCbk( ) ;
}, 0 ) ;
}
let __promise = window["Promise"] ;
let env: string = environment.env ;
let promise = new __promise( ( resolove, reject ) => {
let script = document.createElement("script") ;
script.type = 'text/javascript';
document.head.appendChild( script ) ;
let url = environment.toCDNHostURL(this.polyfill_suffix, false, false) ;
script.onload = function ( evt: Event ): void {
resolove("polyfill success") ;
} ;
script.src = url ;
} ) ;
 
promise.then( (data: string) => {
let promise = new __promise( ( resolove, reject ) => {
let script = document.createElement("script") ;
script.type = 'text/javascript';
document.head.appendChild( script ) ;
let url = environment.toCDNHostURL(this.vue_suffix, false, false) ;
script.onload = function ( evt: Event ): void {
resolove("vue success") ;
} ;
script.src = url ;
} ) ;
 
return promise ;
} ).then( (data: string) => {
let promise = new __promise( ( resolove, reject ) => {
let script = document.createElement("script") ;
script.type = 'text/javascript';
document.head.appendChild( script ) ;
let url = environment.toCDNHostURL(this.vuex_suffix, false, false) ;
script.onload = function ( evt: Event ): void {
resolove("vuex success") ;
} ;
script.src = url ;
} ) ;
 
return promise ;
} ).then( (data: string) => {
let promise = new __promise( ( resolove, reject ) => {
let script = document.createElement("script") ;
script.type = 'text/javascript';
document.head.appendChild( script ) ;
let url = environment.toCDNHostURL(this.venus_js_suffix, false, false) ;
script.onload = function ( evt: Event ): void {
resolove("venus_js success") ;
completeCbk( ) ;
} ;
script.src = url ;
} ) ;
 
return promise ;
} ).then( (data: string) => {
let promise = new __promise( ( resolove, reject ) => {
let link = document.createElement('link');
link.rel = 'stylesheet';
link.type = 'text/css';
document.head.appendChild( link ) ;
let url = environment.toCDNHostURL(this.venus_css_suffix, false, false) ;
link.onload = function ( evt: Event ): void {
resolove("venus_css success") ;
completeCbk( ) ;
} ;
link.href = url ;
} ) ;
 
return promise ;
} ) ;
}
}
 
 
o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
TxtAd

TxtAD一个给各种Txt编码的文件中加入自定义字符文字的应用,它可以处理各种编码格式的Txt文件,包括acsii、unicode和utf-8等编码的文本。这是我们学院的一个练习应用,得到了广大电子书下载网...

山中小熊
2013/06/16
2.1K
0
Flatscript: ES7 `async`/`await` 替代实现

在经历了 JS 的 callback hell 后看过 , 于我而言这仍不能很好解决一些特定用况, 加之其写起来仍然很冗长, 各种匿名函数横飞. 于是就没有继续使用了, 但又不方便说 "反感 Promise" 或 "对 Pr...

neuront
2016/01/13
397
1
ES6 Generator 初体验

ES6 Generator 初体验 听说 ES6 的 Generator 是一个很神奇的函数,所以去了解了一下。 因为它不同于以往的寻常函数,但是带来的体验却非常好 。这里首先讲了 Generator 是什么,分割线后面用...

ArcoIris
2016/05/24
488
4
编译器编译原理

什么是gcc 什么是gcc:gcc是GNU Compiler Collection的缩写。最初是作为C语言的编译器(GNU C Compiler),现在已经支持多种语言了,如C、C++、Java、Pascal、Ada、COBOL语言等。 gcc支持多种...

沙米笔记
2016/05/24
1.2K
3
九种浏览器端缓存方法知多少

  浏览器缓存(Browser Caching)是浏览器端保存数据用于快速读取或避免重复资源请求的优化机制,有效的缓存使用可以避免重复的网络请求和浏览器快速地读取本地数据,整体上加速网页展示给...

ouven
2015/12/30
1.1W
24

没有更多内容

加载失败,请刷新页面

加载更多

Hystrix核心原理和断路器源码解析

Hystrix运行原理 构造一个HystrixCommand或HystrixObservableCommand对象 执行命令。 检查是否已命中缓存,如果命中直接返回。 检查断路器开关是否打开,如果打开,直接熔断,走fallback逻辑...

xiaolyuh
今天
10
0
求职应聘,如何自我分析人格优势?

“你那里有没有合适的工作介绍给我啊?” “我想找份我喜欢的工作,可是好难啊怎么办啊?” “为什么我求职总是不成功呢?” 最近我总是接到朋友询问工作相关的消息,给她们提供招聘信息的同...

蛤蟆丸子
今天
17
0
Pycharm、Idea、Goland 官方汉化来了

作为软件开发的编辑器,不得不提大名鼎鼎的 JetBrains 公司,其出品的软件:Pycharm、Idea、WebStorm、phpstorm、CLion、RubyMine、AppCode、DataGrid,目前来讲都是最受欢迎的! 可是由于软...

猪哥66
今天
18
0
数据分析师必学第一课:构建完整的指标体系

本文分享自微信公众号 - 大数据架构师专家(xinsz08)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。...

致码高胜寒
今天
10
0
B站牛逼的实时弹幕系统架构是如何实现的

点击上方 “Java架构师社区”关注我们,设为星标 回复"架构师"获取资源 前言:随着直播的发展,直播弹幕也逐渐火爆起来。在架构设计上,高稳定、高可用、低延迟是一款直播弹幕系统必备的三要素...

Java架构师历程
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部