Angular 2 快速入门<脚本 /> 失败
Angular 2 QuickStart <script /> failing
我按照网络说明手动创建了 Angular 2 的 5 分钟快速入门。该应用程序与快速入门教程几乎相同。但是我导入了这样的.js文件:
<script src="node_modules/es6-shim/es6-shim.min.js" />
<script src="node_modules/systemjs/dist/system-polyfills.js" />
<script src="node_modules/angular2/es6/dev/src/testing/shims_for_IE.js" />
<script src="node_modules/angular2/bundles/angular2-polyfills.js" />
<script src="node_modules/systemjs/dist/system.src.js" />
<script src="node_modules/rxjs/bundles/Rx.js" />
<script src="node_modules/angular2/bundles/angular2.dev.js" />
像下面这样更改它们会使应用程序正常工作:
<script src="node_modules/es6-shim/es6-shim.min.js"></script>
<script src="node_modules/systemjs/dist/system-polyfills.js"></script>
<script src="node_modules/angular2/es6/dev/src/testing/shims_for_IE.js></script>
<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
<script src="node_modules/systemjs/dist/system.src.js"></script>
<script src="node_modules/rxjs/bundles/Rx.js"></script>
<script src="node_modules/angular2/bundles/angular2.dev.js"></script>
谁能解释这种奇怪的(至少对我来说(行为?
在 HTML 中,脚本元素具有必需的开始标记和必需的结束标记。不能省略结束标记。这就是HTML的设计方式。
如果你想要一些历史背景:
在开始时,HTML 元素通常:
- 包含内容并具有必需的开始和结束标记
- 包含内容,但只允许有限选择子元素,因此结束标记是可选的,因为它可以通过存在不允许作为子元素的元素来推断。(例如
<p>
( - 如上所述,但只能在非常有限的地方使用,因此开始标签也是可选的(例如
<body>
( - 无法包含内容(例如
<img>
( 所以禁止的结束标记
<script>
是在这个时候推出的。它可以包含内容(内联脚本(,因此需要开始和结束标记。
然后出现了XHTML。在XHTML中,<foo />
和<foo></foo>
的意思完全相同。除了你需要一个XML解析器,并且浏览器没有使用它们来解析HTML(因为HTML不是XML,所以它会出错(。您可以将文档作为application/xhtml+xml
提供,这将触发 XML 解析器...除非如果浏览器没有,它会中断......如果你确实有一个黄色的死机屏幕,你会得到一个黄色的死机,但作者犯了一个微小的格式错误。
所以几乎每个人都放弃了XHTML。
然后是HTML 5,它被设计为向后兼容和向前兼容。
在 HTML 5 中,<foo />
的含义与 <foo>
相同,以便最终沉迷的 XML 可以继续在图像开始标记的末尾放置一个/
。
在HTML 5中,有许多新元素,但旧浏览器不知道它们,所以当它们被引入时,所有这些元素的开始和结束标签都是强制性的,这样那些无法识别它们的浏览器(因此无法推断结束标签应该去哪里(就不会在DOM上噎住。
脚本标记不能按照各种 W3C 标准的规定自行关闭。
C.3. 元素最小化和空元素内容
给定内容模型不为空的元素的空实例(例如,空标题或段落(,不要使用最小化形式(例如,使用
<p> </p>
而不是<p />
(。
A.1.1.XHTML-1.0-严格
<!ENTITY % Script "CDATA">
<!-- script expression -->
- 网页上失败的javascript会导致所有其他脚本失败
- PHP和JS脚本的奇怪问题,在我刷新页面之前第一次失败
- Google Apps 脚本为 getLastRow 抛出电子邮件失败通知,我做错了什么
- 我用脚本创建了一个按钮.我可以通过点击按钮调用其他函数吗?我这样做,但失败了
- Angular 2 快速入门<脚本 /> 失败
- 我正在用java脚本编写一个hangman程序,如果玩家失败了,我需要帮助来显示这个词
- 一旦第三方脚本加载失败,立即运行一段JavaScript
- 通过 .load() 加载的脚本失败
- JavaScript 中的登录脚本失败
- 表单选择 GT 9 时脚本失败
- 内容替换 JS 脚本失败
- 作为预生成事件执行PowerShell脚本失败
- 导致脚本失败的方法
- 由于空白字符,Java脚本失败
- 从母版页访问脚本失败,但从内容页都是正确的
- Babel-node脚本失败'意外标记'syntaxError on '线
- 在IE7, 8和9中填充列表时脚本失败
- Eslint脚本失败,流星运行NPM Eslint
- 远程脚本失败处理-JavaScript
- 在Elasticsearch中加载javascript脚本失败