深入理解angular2启动项目步骤

发布时间 - 2026-01-11 02:21:39    点击率:

1. 创建项目文件夹

创建一个新的文件夹来保存你的项目,比如一开始有个self就好了

2.安装基础库

首先确保已经安装了node.js

我们使用 npm package manager  来安装需要的开发库和开发工具。

打开终端窗口,输入下面的命令。

npm install

如果在执行npm install命令时没有出现npm ERR!,一起都好。可能会有几个npm WARN消息,这也没有影响。
我们会经常在一连串的gyp ERR!(gyp: generate your project)消息后看到一个npm WARN消息。不用管他们。一个包会使用node-gyp重新编译自己。如果重新编译失败,包会恢复(场使用一个预编译版本),一切正常工作。
只要保证在npm install命令最后面没有npm ERR!就好。

之后再执行下面的命令

npm init -y
npm i angular2@2.0.0-alpha.44 --save --save-exact
npm i live-server --save-dev

这些命令将会创建名为 package.json 的项目文件,安装相应的软件包,现在的 package.json 看起来应该如下所示。

{
 "name": "angular2-getting-started",
 "version": "1.0.0",
 "dependencies": {
  "angular2": "2.0.0-alpha.44"
 },
 "devDependencies": {
  "live-server": "^0.8.1"
 }
}

还需要一个 scripts 的配置节,找到并替换为如下的内容, 如果在你的文件中没有这个配置节, 那就加上好了. 

"scripts": {
  "start": "live-server"
 }

3. 第一个 Angular Component

添加一个名为 app.js 的文件,输入下面的内容。

var AppComponent = ng
 .Component({
  selector: 'my-app',
  template: '<h1>My First Angular 2 App</h1>'
 })
 .Class({
  constructor: function () { }
 });

我们正在创建一个名为 AppComponent 的可视组件,通过使用全局的 ng 命名空间下的 Component 和 Class 方法来完成。

var AppComponent = ng
  .Component({...})
  .Class({...})

Component 方法需要一个包含两个属性的配置对象。selecter 属性告诉 Angular 需要控制名为 "my-app" 的元素。一旦遇到 my-app 元素,Angular 将会创建和显示 AppComponent 实例

template 属性定义了组件的可视外观。在这个示例中,我们使用了内联的模板,我们也可以把这个模板调整到一个模板文件中,然后通过 templateUrl 来关联模板文件的名称来使用它。

我们使用 Class 方法实现这个组件本身的内容,可以定义属性,方法并绑定到这个视图

现在的组件是一个最小化的实现,构造函数中没有内容。在以后的示例中,我们会看到很多有趣的内容。

4. 启动应用

我们需要在应用中做点什么,在 app.js 的最后,添加下面的内容。

document.addEventListener('DOMContentLoaded', function() {
 ng.bootstrap(AppComponent);
});

我们等到浏览器通知我们说,内容已经加载完成了,然后再调用 bootstrap 方法。

bootstrap 方法通知 Angular 使用 AppComponent 作为应用的根来启动应用,

应该可以猜到, 在应用变得复杂的情况下, 我们会创建一个 Component 的树来完成复杂的工作.

 Wrapped in an IIFE

我们不希望污染全局命名空间,但是,现在还不需要应用到命名空间,我们直接使用 IIFE ( Immediately Invoked Function Execution ) 来封装我们的代码。

(function() {
var AppComponent = ng
 .Component({
  selector: 'my-app',
  template: '<h1>My First Angular 2 App</h1>'
 })
 .Class({
  constructor: function () { }
 });
document.addEventListener('DOMContentLoaded', function() {
 ng.bootstrap(AppComponent);
});
})();

 5. 创建 index.html

在项目文件夹中添加名为 index.html 的页面,内容如下:

<html>
 <head>
  <title>Angular 2 QuickStart</title>
  <script src="node_modules/angular2/bundles/angular2.sfx.dev.js"></script>
  <script src="app.js"></script>
 </head>
 <body>
  <my-app></my-app>
 </body>
</html>

在 head 中,我们的应用加载了两个脚本

angular2.sfx.dev.js, Angular2 的开发库

app.js, 我们刚刚开发的脚本。

在 body 中,使用了名为 <my-app> 的元素,这是应用的根的占位,Angular 将在这里显示我们的应用。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# angular2启动步骤  # angularjs2  # 启动  # 启动angular2项目  # 详解如何构建Angular项目目录结构  # angular学习之从零搭建一个angular4.0项目  # 详解用webpack2搭建angular2的项目  # Angular 4环境准备与Angular cli创建项目详解  # 详解webpack+es6+angular1.x项目构建  # Angularjs---项目搭建图文教程  # angularjs学习笔记之完整的项目结构  # 创建一个  # 将会  # 来完成  # 是一个  # 这是  # 加载  # 使用了  # 好了  # 有个  # 在这个  # 第一个  # 那就  # 将在  # 就好  # 还不  # 这也  # 软件包  # 然后再  # 有几个  # 还需要 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  七夕网站制作视频,七夕大促活动怎么报名?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】  如何用PHP快速搭建CMS系统?  香港服务器WordPress建站指南:SEO优化与高效部署策略  如何用5美元大硬盘VPS安全高效搭建个人网站?  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法  开心动漫网站制作软件下载,十分开心动画为何停播?  Laravel如何配置任务调度?(Cron Job示例)  lovemo网页版地址 lovemo官网手机登录  北京企业网站设计制作公司,北京铁路集团官方网站?  如何实现建站之星域名转发设置?  Python文件异常处理策略_健壮性说明【指导】  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  如何解决hover在ie6中的兼容性问题  如何在万网ECS上快速搭建专属网站?  如何用AWS免费套餐快速搭建高效网站?  标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南  如何在阿里云虚拟服务器快速搭建网站?  如何在香港服务器上快速搭建免备案网站?  如何彻底卸载建站之星软件?  Laravel Docker环境搭建教程_Laravel Sail使用指南  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  java ZXing生成二维码及条码实例分享  什么是JavaScript解构赋值_解构赋值有哪些实用技巧  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  如何快速搭建高效服务器建站系统?  JavaScript如何实现音频处理_Web Audio API如何工作?  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  PHP正则匹配日期和时间(时间戳转换)的实例代码  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  浅析上传头像示例及其注意事项  Laravel如何使用Collections进行数据处理?(实用方法示例)  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  如何用y主机助手快速搭建网站?  Laravel如何记录自定义日志?(Log频道配置)  jquery插件bootstrapValidator表单验证详解  如何用花生壳三步快速搭建专属网站?  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  linux top下的 minerd 木马清除方法  夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化  如何在阿里云域名上完成建站全流程?  实例解析angularjs的filter过滤器  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  android nfc常用标签读取总结  如何在阿里云部署织梦网站?  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】