使用ember-cli脚手架快速构建项目
步骤:
- 安装Ember。
- 创建一个新应用程序。
- 定义路由。
- 编写一个UI组件。
- 构建您的应用程序以部署到生产环境。
安装Ember
您可以使用npm(Node.js包管理器,你需要安装node.js)使用单个命令来安装Ember。在终端中输入以下内容:
ember new ember-quickstart
创建一个新应用程序
一旦你通过npm安装了Ember CLI,你将可以ember在你的终端中访问一个新的命令。您可以使用该ember new命令来创建一个新的应用程序:
ember new ember-quickstart
这一个命令将创建一个新的目录,ember-quickstart并在其中创建一个新的Ember应用程序。您的应用程序将包括:
- 一个开发服务器ember server。
- handlebar模板编译。
- JavaScript和CSS压缩包。
- 通过Babel的ES2015功能(ES6)。
通过提供您需要的所有功能,您可以在集成软件包中构建适用于生产环境的Web应用程序,Ember使轻松启动新项目成为可能。
启动项目
在终端中键入cd进入应用程序目录ember-quickstart并键入以下命令来启动开发服务器:
cd ember-quickstart
ember serve
(要随时停止服务器,请在终端中键入Ctrl-C。)
在您选择的浏览器中打开http://localhost:4200。你将看到一个Ember欢迎页面,您刚刚创建并引导了您的第一个Ember应用程序。
我们将开始编辑application模板改变页面中的内容:<h1>PeopleTracker</h1>。
| app/templates/application.hbs | |
1 |
<h1>PeopleTracker</h1>
{{outlet}}
|
定义路由
让我们构建一个显示列表的应用页面,要做到这一点就是创建一条路由进行切换。
Ember带有可以自动执行常见任务的样板代码的生成器。要生成路由,请在项目文件目录ember-quickstart中的新终端窗口中输入:
ember generate route scientists
该命令创造了:
- 用户访问时要显示的模板
/scientists.hbs。 - 一个
Route是获取由模板中使用的模型对象。 - 应用程序路由器中的条目(位于
app/router.js)。 - 此路线的单元测试。
打开新创建的模板app/templates/scientists.hbs并添加以下HTML:
| app/templates/scientists.hbs | |
1 |
<h2>List of Scientists</h2> |
在你的浏览器中打开http://localhost:4200/scientists。你应该看到scientists.hbs模板中的<h2>List of Scientists</h2>就在application.hbs模板内容<h1>PeopleTracker</h1>的下面:
{{outlet}}
创建一个UI组件
随着应用程序(页面路由)的增长,您会注意到您在多个页面之间共享UI元素,或在同一页面上多次使用它们。Ember可以轻松将您的模板重构为可重用组件。
我们来创建一个people-list可以在多个页面重复使用的组件来显示人员列表。输入以下内容以创建新组件:
ember generate component people-list
然后将scientists模板复制并粘贴到people-list组件的模板中并进行编辑,如下所示:
| app/templates/components/people-list.hbs | |
1 |
<h2>{{title}}</h2>
<ul>
|
| app/templates/scientists.hbs | |
1 |
<h2>List of Scientists</h2> <ul> |
点击事件
到目前为止,您的应用程序正在列出数据,但用户无法与信息交互。在Web应用程序中,您经常希望监听点击或悬停等用户事件。
Ember使这很容易做到,你只需要在组件中添加一个action事件:
| app/components/people-list.js | |
1 |
import Component from '@ember/component';
export default Component.extend({
|
打包项目
我们已经编写了我们的应用程序并验证了它在开发中的作用,现在是时候打包部署给我们的用户直接使用了。
使用build命令打包构成应用程序的所有资产分类:JavaScript,模板,CSS,Web字体,图像等:
ember build --env production
详情可参考官方网站:https://guides.emberjs.com/v3.0.0/getting-started/quick-start/
使用ember-cli脚手架快速构建项目的更多相关文章
- vue2.x利用脚手架快速构建项目并引入bootstrap、jquery
要使用vue-cli脚手架搭建项目,首先需要安装node.js Node.js官网:https://nodejs.org/en/download/ 选择你对应的系统即可下载,下载完成后傻瓜式安装即可. ...
- vue 概念与使用vue-cli脚手架快速构建项目
vue 定义:是一套构建用户界面的渐进式框架,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合. 数据渲染机制: 核心: 响应式数据绑定 ...
- 使用vue-cli脚手架快速构建项目
1.创建一个文件夹,vscode打开 2.ctr + shift+` 打开指令窗口 3.npm i vue-cli -g 安装vue-cli 4.vue -V 测试安装版本 检查是否安装成功 5. ...
- 用vue-cli快速构建项目
用vue-cli脚手架快速构建项目的过程:1.首先要在node的环境下安装: 1>安装node:https://nodejs.org/en/(带npm,但是npm太慢了,建议安装cnpm,cnp ...
- SpringBoot系列——快速构建项目
前言 springboot官方参考指南:https://docs.spring.io/spring-boot/docs/2.1.0.RELEASE/reference/htmlsingle/ Spri ...
- SpringBoot:使用IDEA快速构建项目
西部开源-秦疆老师:基于SpringBoot 2.1.6 的博客教程 秦老师交流Q群号: 664386224 未授权禁止转载!编辑不易 , 转发请注明出处!防君子不防小人,共勉! SpringBoot ...
- 转载: 我如何使用 Django + Vue.js 快速构建项目
原文链接: https://www.ctolib.com/topics-109796.html 正文引用如下 引言 大U的技术课堂 的新年第一课,祝大家新的一年好好学习,天天向上:) 本篇将手把手教你 ...
- 使用Facebook的create-react-app脚手架快速构建React开发环境(ant.design,redux......)
编程领域中的“脚手架(Scaffolding)”指的是能够快速搭建项目“骨架”的一类工具.例如大多数的React项目都有src,public,webpack配置文件等等,而src目录中又包含compo ...
- 【HttpRunner v3.x】笔记 ——2. 用脚手架快速创建项目
环境装好了,相信很多童鞋已经迫不及待的想run起来了,但是面对一个陌生的框架又无从下手.没关系,我们可以用脚手架来快速生成一个httprunner项目. 一.快速生成项目 我们不妨先输入httprun ...
随机推荐
- 《Android应用性能优化》1——代码
1.Java代码优化 1.1 代码执行 通常情况下,不必看应用的字节码.在平台是Android2.2(Froyo)和更高版本的情况下尤其如此,因在Android2.2中引入了实时(JIT)的编译器.D ...
- VMware workstation 11 的下载
不多说,直接上干货! VMWare Workstation 11的下载详细: 谷歌FQ,进入. 具体怎么达到可以FQ,见 FQ软件lantern-installer-beta.exe(推荐) 成功! ...
- Eclipse Git 克隆项目的时候出现Internal error; consult Eclipse error log
在使用git下载代码时偶尔会遇到 Internal error; consult Eclipse error log 这个报错. 简述下个人解决思路: Eclipse 错误日志报错为:org.ecl ...
- WPF将TextBox的边框设为圆角的
将TextBox的边框设为圆角的,因为TextBox默认的样式中边框就是由Border类型来实现的, 所以只需要真的当前的TextBox的Border修改属性即可,为了不影响界面中别的Border的样 ...
- 利用meta标签将http请求换成https请求
最近网站升级为https之后,为了防止一些http文件没有修改而引起的问题,可以加一个meta标签: <meta http-equiv="Content-Security-Policy ...
- firefox native extension -- har export trigger
这两天想学习下如何在运行自动化脚本时去capture http traffic,google看到一篇博客介绍用browser mob proxy或者firefox+firebug+netexport, ...
- Python List 基础学习
list&tuple&dict list list 常见操作 初始化: list1 = [123, 'abc', 4.56, ['inner', 'list'], 7-9j] list ...
- [uva] 1671 History of Languages
题目描述 输入两个DFA,判断是否等价. https://uva.onlinejudge.org/external/16/1671.pdf 输入 第一行T 可以接受的字母表 第二行N 状态数 接下去N ...
- .Net调用Java端带有WS-Security支持的Web Service【亲测通过】
做了几年的开发,今天终于鼓起勇气开通了博客园.平时都是找各种大牛,看他们的分享博客的解决BUG.从今天起,我也开始分享我学习之路.还望大家多多支持! 最近收到一个采用Axis2实现的WebServic ...
- 小白学习之Code First(三)
上下文Context类中的base构造器的几个方法重置(1.无参 2.database name 3 . 连接字符串) 无参:如果基类base方法中无参,code first将会以 :{Namespa ...