我有一个在firefox和chrome中工作的angular 2应用程序,而不是在IE中工作。根据我的堆栈跟踪,我的系统js设置似乎有问题。
下面是我在web控制台中看到的错误描述。
Error: (SystemJS) Syntax error
SyntaxError: Syntax error
at ZoneDelegate.prototype.invoke (http://localhost:8050/node_modules/zone.js/dist/zone.js:230:13)
at Zone.prototype.run (http://localhost:8050/node_modules/zone.js/dist/zone.js:114:17)
at Anonymous function (http://localhost:8050/node_modules/zone.js/dist/zone.js:502:17)
Evaluating http://localhost:8050/app/app.module.js
Error loading http://localhost:8050/app/app.module.js as "./app.module" from http://localhost:8050/app/main.js
它看起来找不到我的
app/app.module.js
<script src="/node_modules/core-js/client/shim.min.js"></script>
<script src="/node_modules/systemjs/dist/system-polyfills.src.js"></script>
看起来请求正试图命中
URL Protocol Method Result Type Received Taken Initiator Wait Start Request Response Cache read Gap
/node_modules/systemjs/dist/Promise.js.map HTTP GET 404 text/html 210 B 16 ms XMLHttpRequest 140 0 16 0 0 5266
或者promise.js.map在systemjs文件夹中,但我没有它。
那么,几个新问题
<script src="/node_modules/systemjs/dist/system-polyfills.src.js"></script>
我已经尝试将在tsconfig.json中找到的ES6目标切换到ES5目标,如下所示。现在,当我尝试构建时,我得到了一系列其他问题,堆栈跟踪可以通过这篇文章很好地描述。
通过切换到ES5目标,我无法访问地图、promise等...
我已经试着研究了这个问题的一些修复方法,比如添加以下内容
///<reference path="node_modules/angular2/typings/browser.d.ts"/>
<script src="/node_modules/core-js/client/shim.min.js"></script>
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);
如果我注释掉第三行,web控制台中的错误就会消失,但现在我的应用程序当然不会引导。
只是为了好玩,下面是我的tsconfig.json
{
"compilerOptions": {
"target": "es6",
"module": "system",
"moduleResolution": "node",
"experimentalDecorators": true
},
"exclude": [
"node_modules",
"jspm_packages"
]
}
我终于明白了,这并不容易。我需要解决一些不同的问题。
1)我需要将tsconfig.json中的“目标”设置为“ES5”
{
"compilerOptions": {
"target": "es6", ==> "target" : "es5",
"module": "system",
"moduleResolution": "node",
"experimentalDecorators": true
},
"exclude": [
"node_modules",
"jspm_packages"
]
}
2)我需要在index.html文件中包含正确的shim
<script src="/node_modules/core-js/client/shim.min.js"></script>
node_modules/rxjs/operator/toPromise.d.ts(7,59): error TS2304: Cannot find name 'Promise'.
node_modules/rxjs/operator/toPromise.d.ts(7,69): error TS2304: Cannot find name 'Promise'.
node_modules/rxjs/operator/toPromise.d.ts(9,9): error TS2304: Cannot find name 'Promise'.
node_modules/rxjs/operator/toPromise.d.ts(10,26): error TS2304: Cannot find name 'Promise'.
node_modules/rxjs/operator/toPromise.d.ts(10,36): error TS2304: Cannot find name 'Promise'.
/// <reference path= "../node_modules/typescript/lib/lib.es6.d.ts" />
具体参见:com.gitee.easyopen.message.Errors.java 注:0~100为系统占用的code码 -9=系统错误 1=调用不存在的服务请求 2=服务请求参数非法 3=服务请求缺少应用键参数 4=服务请求的应用键参数无效 5=服务请求需要签名,缺少签名参数 6=服务请求的签名无效 7=服务请求超时 8=服务请求业务逻辑出错 9=服务不可用 10=服务请求时间格式有误 11
不论是在我自己机器上还是其他主机上,只要部署了dokuwiki,其系统时间(也就是修改或者提交的记录时间)都会比我的本机时间晚8个小时。比如,我的本机时间是2011\9\20 22:00:00,那么记录时间就会是2011\9\20 14:00,请问如果要更改为本机时间,怎么修改? 1楼的。。。是修改linux系统的cmos时间吧,牛头不对马嘴。。。。。。 我的dokuwiki是部署在windows
系统语言 设定自家选单等的显示语言。 Deutsch 以德文显示 English 以英文显示 Español 以西班牙文显示 Français 以法文显示 Italiano 以意大利文显示 Nederlands 以荷兰文显示 Português 以葡萄牙文显示 Pyccкий 以俄文显示 以日文显示 以韩文显示 以简体中文显示 以繁体中文显示
可设定PS Vita的系统软件的显示语言。 若要变更设定,需先关闭所有使用中的应用程序。 Dansk 以丹麦语显示 Deutsch 以德语显示 English (United Kingdom) 以英语(英国)显示 English (United States) 以英语(美国)显示 Español 以西班牙语显示 Français 以法语显示 Italiano 以意大利语显示 Nederlands
我使用贝宝在我的Android商店,它工作正常,可以成功结账时使用"Paypal"。但当我尝试使用"用卡支付"的错误信息是: 请求失败,http状态代码:400,异常:请求错误 请求失败,服务器响应:{“名称”:“DCC_预处理器错误”,“消息”:“DCC_预处理器错误”,“信息链接”:https://developer.paypal.com/docs/api/#DCC_PREPROCESSOR_
我的系统有两个问题。记录我正在解决一些问题。该网站似乎运行良好,但我非常希望从日志中删除这些正在进行的错误。 注意:未定义变量:order in/var/www/。。。在线17 警告:在/var/www/…中被零除。。。在线267 更新 我之前发布了错误的代码对不起,我在查看错误日志时感到困惑,因为相同的(Devider)错误出现在商品和订单部分