首页 > 其他分享 >AngularJS2.0 quick start——其和typescript结合需要额外依赖

AngularJS2.0 quick start——其和typescript结合需要额外依赖

时间:2023-05-30 22:02:06浏览次数:52  
标签:文件 typescript ES6 app start TypeScript angular2 AngularJS2.0 加载

AngularJS2 发布于2016年9月份,它是基于ES6来开发的。

运行条件!

由于目前各种环境(浏览器或 Node)暂不支持ES6的代码,所以需要一些shim和polyfill(IE需要)让ES6写的代码能够转化为ES5形式并可以正常运行在浏览器中。

AngularJS2.0  quick start——其和typescript结合需要额外依赖_模块加载

从上图可以看出在 Es5 浏览器下需要以下模块加载器:

  • systemjs - 通用模块加载器,支持AMD、CommonJS、ES6等各种格式的JS模块加载。
  • es6-module-loader - ES6模块加载器,systemjs会自动加载这个模块。
  • traceur - ES6转码器,将ES6代码转换为当前浏览器支持的ES5代码,systemjs会自动加载 这个模块。 

接下来

从零开始,通过TypeScript创建一个简单的应用程序。

可以看一下Angular2.0的官网给出的Demo https://angular.io

开发环境配置

我们需要一个应用程序项目文件夹,用来放一些库,一些TypeScript 的配置和所选的TypeScript-aware编辑器。

创建一个项目 angular2-quickstart

在磁盘下面创建一个目录:angular2-quickstart

在项目目录下面增加一个package.json的文件,文件内容如下:

{
  "name": "angular2-quickstart",
xxx,
  "dependencies": {
    "angular2": "2.0.0-beta.0",
    "systemjs": "0.19.6",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.0",
    "zone.js": "0.5.10"
  },
  "devDependencies": {
    "concurrently": "^1.0.0",
    "lite-server": "^1.3.1",
    "typescript": "^1.7.3"
  }
}

package.json文件编辑好之后 使用npm install安装。

配置 TypeScript

我们要引导TypeScript编译器非常详细的设置。

在项目根目录下面增加一个文件tsconfig.json,文件内容如下:xxx

到目前位置配置完成。

简单组件开发

在项目根目录下面建立一个app目录 ,便于存放源代码。 在app下面增加一个组件文件 app.component.ts文件内容如下:xxx

下面会告诉你如何调用上面的AppComponent组件。

在app目录下面增加一个boot.ts的文件,文件内容如下:

import {bootstrap}    from 'angular2/platform/browser'
import {AppComponent} from './app.component'

bootstrap(AppComponent);

boot.ts是用来运行这个组件的,需要两步来运行

1.导入 bootstrap 函数

2.导入我们刚才定义的AppComponent组件

调用 bootstrap 函数, 并传人主组件 AppComponent

在项目根目录angular2-quickstart下面创建一个index.html文件。内容如下:xxx 见http://angularjs.cn/A2nG

运行Angular 2.0

然后在cmd下运行我们的app

npm start

运行出来竟然是

Loding.....

解决方法:在index.html中head里面其他script之前加入如下代码:

<script src="node_modules/es6-shim/es6-shim.js"></script>

 

参考:http://angularjs.cn/A2nG

标签:文件,typescript,ES6,app,start,TypeScript,angular2,AngularJS2.0,加载
From: https://blog.51cto.com/u_11908275/6382324

相关文章

  • ES无法启动_OOM_Exception in thread "main" java.lang.RuntimeException: starting j
    1.报错显示[root@iZ7xv2ya5ap2bnetr231koZ~]#dockerlogsesExceptioninthread"main"java.lang.RuntimeException:startingjavafailedwith[1]output:##ThereisinsufficientmemoryfortheJavaRuntimeEnvironmenttocontinue.#Nativememorya......
  • Android 12 startActivity梳理
    前面梳理了WM中Window容器的概念,今天梳理一下startActivity的流程,看一下window容器的体现。其实在server端Window最终都会表现为WindowState对象。而之所以存在划分层级的window容器,是为了有层级的管理,目的是实现Android的一些列feature,如:任务栈Task,Task引出Activity的生命周期......
  • An attempt has been made to start a new process before the current process has f
     Traceback(mostrecentcalllast): File"<string>",line1,in<module> File"E:\Eprogramfiles\Anaconda3\lib\multiprocessing\spawn.py",line116,inspawn_main   exitcode=_main(fd,parent_sentinel) File"E......
  • 2023-05-28 TypeScript学习记录(长更)
    概述:TypeScript(下称ts),js的超集,在js基础上进行了扩展并且新增了一些类型;不能被浏览器直接识别,需要编译为js才能被执行。为什么使用ts,而不是js:js语法的定义相对不够严谨,变量没有约束,而ts在js一些不足的地方进行了优化,使写法变得严谨也更为复杂起来。ts安装:npminstall-gtypescri......
  • TS 从入门到深度掌握,晋级TypeScript高手
    TS从入门到深度掌握,晋级TypeScript高手download:3wzxit666comRN从0到1系统精讲Part1:环境搭建ReactNative是一种基于React的开源框架,可以用JavaScript来编写原生移动应用程序。本文将详细介绍如何从零开始学习和使用ReactNative。安装必要软件首先,我们需要安装Node.js和npm......
  • Could not commit Hibernate transaction,Transaction not successfully started
    CouldnotcommitHibernatetransaction,Transactionnotsuccessfullystarted1.数据库操作和业务分离。事务内属于业务验证抛出的异常问题或其他不符合当前业务规则的异常,挪到上一层级,如接口层或业务视图层,以此避免该类问题2.evict。获取当前session,evict当前数据库对象,避......
  • 快捷转换/互转 Markdown 文档和 TypeScript/TypeDoc 注释
    背景作为文档工具人,经常需要把代码里面的注释转换成语义化的Markdown文档,有时也需要进行反向操作。以前是写正则表达式全局匹配,时间长了这种方式也变得繁琐乏味。所以写了脚本来互转,增加一些便捷性。解决方案注释转Markdown下载地址:https://github.com/mazeyqian/go-gin-ge......
  • mysql在执行start slave命令时报错"ERROR 1872 (HY000)"
    问题描述:mysql在执行startslave命令时报错"ERROR1872(HY000)",如下所示:数据库:mysql8.0.27系统:rhel7.31、问题重现mysql>startslave;ERROR1872(HY000):Slavefailedtoinitializerelayloginfostructurefromtherepository2、异常原因从库已经存在之前的relay......
  • python flask 启动报错 'utf-8' codec can't decode byte 0xb2 in position 4: invali
    原因:在python下lib文件夹里的socket.py文件中的name=gethostname()代码执行获取本机电脑名称时,遇到中文导致乱码报错。解决方法:    1.将电脑“设备名称”中中文改为英文;    2.修改socket.py代码,如下(参考https://blog.csdn.net/weixin_46342884/article/detail......
  • 09_TypeScript 函数
    09_TypeScript函数函数是一组一起执行一个任务的语句。您可以把代码划分到不同的函数中。如何划分代码到不同的函数中是由您来决定的,但在逻辑上,划分通常是根据每个函数执行一个特定的任务来进行的。函数声明告诉编译器函数的名称、返回类型和参数。函数定义提供了函数的实际主......