1 Star 0 Fork 1.6K

牧云12 / NiceFish

forked from 大漠穷秋 / NiceFish 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

NiceFish(美人鱼)

【昨天红薯跟我讲,只要能有1000个星儿,就给我发一个开源奖杯,于是我就求你们了,给这个项目加个星儿吧!噗通~~双膝着地!】

NiceFish(美人鱼)是一个微型Blog系统,前端基于Angular 2 + ng2-Bootstrap。

NiceFish-Admin是系统管理界面(正在做):http://git.oschina.net/mumu-osc/NiceFish-Admin

NiceFish-SpringMybatis是Java版后台(正在做):http://git.oschina.net/mumu-osc/NiceFish-SpringMybatis

NiceFish可以用来搭建个人Blog、微型SNS站点,或者用于学习Angular2(其实我并不在乎你用来干嘛,那关我什么事呢对吧?)。

目前3个系列项目定位如下:NiceFish用来展示Angular2在典型的门户型项目中的用法,NiceFish-Admin用来展示Angular2在后台管理型项目里面的用法,NiceFish-SpringMybatis用来展示Angular2如何与Java版的Server端进行对接。

一起来玩儿吧!很好玩儿哦!

对应的视频教程

此项目对应的视频教程(超清),包括所有PPT,请点这里:https://my.oschina.net/mumu/blog/834254

这是全球第一个完整的Angular2.0中文视频教程,由大漠穷秋老师录制。此视频是完全开源免费的,你可以随意使用、转发,但是不能对课程相关的内容进行任何编辑,尤其不能向观众收取任何形式的费用。

你见过哪一个开源项目会如此细致地配上视频教程?

你见过哪个讲师会如此无私地把所有PPT都分享出来?

所以你一定要仔细看啊!

有些人问的那些个问题啊,too simple! somtimes naive!

视频教程截图

演示地址

阿里云上的演示地址:http://121.196.220.118:8081/

以下是效果图:

效果图

效果图

效果图

效果图

效果图

目录结构

目录结构1 目录结构2

用法

用git克隆本项目,从命令行进入进入项目根目录,依次执行以下命令:

npm i -g cnpm
cnpm i -g @angular/cli
cnpm install
ng serve

如果之前装过angular-cli需要先卸载:npm uninstall -g angular-cli 如果之前装过@angular/cli需要先卸载:npm uninstall -g @angular/cli 如果你之前已经尝试安装过node模块,请把NiceFish根目录下的node_moduels目录删掉 然后依次执行以下命令:

npm cache clean
npm i -g cnpm
cnpm i -g @angular/cli
cnpm install
ng serve

打开你的浏览器,访问http://localhost:4200/

如果你想让加载的包更小,请使用以下方式启动angular-cli内置的轻量级http server

ng serve --prod --aot

如果你需要把项目发布到其它类型的Server上,例如Tomcat,需要对Server进行一些简单的配置才能支持HTML5下的PushState路由模式,我在这篇文章里面有详细的介绍https://my.oschina.net/mumu/blog/830696。

【注意】如果你发现ng serve起不来,或者起来有报错,请把NiceFish根目录下的node_modules目录删掉,然后重新执行cnpm install,全局的@angular/cli也需要重装。

更新

打开命令行,进入NiceFish根目录,依次执行以下命令:

git pull
cnpm update
ng serve

噢对,如果你pull代码之后发现起不来了,请把你项目下的node_modules全部删掉,然后重新npm update。这里确实有点坑,但是我也不知道为什么。

AOT&TreeShaking

开发状态打出来的bundle体积比较大,在发布到生产环境之前需要进行prod和AOT,用法如下:

打开命令行,进入NiceFish根目录,执行以下命令:

ng build --prod --aot

加上--prod参数之后,angular-cli会自动启用TreeShaking(摇树)特性,简而言之,就是把用不到的包全部剔除掉,就像从树上把枯叶子摇下来一样,很形象吧?加上--aot参数是让angular-cli启动预编译特性。

angular-cli会在项目根目录下生成一个dist目录,里面就是编译、压缩好的文件了。仔细观察你会发现,这些文件的体积已经被大幅度压缩,加上gzip之后有一些文件只剩下1/4左右的大小。

效果图

效果图

关于Tomcat如何启动gzip,我专门写了一篇文章来介绍配置,请点这里:https://my.oschina.net/mumu/blog/830742

【请注意】最新版本的angular-cli已经内置了对AOT和TreeShaking的支持,只要像上面这样在build的时候加上--prod和--aot参数就可以了,不需要再做任何其它任何配置工作,官方网站上的那一篇指南有点过时了。

注意(请仔细看)

如果你用原生的npm进行安装,可能需要采用科学的上网方式才能安装某些包!

所以强烈推荐采用cnpm来安装!

可是我不想搭环境!

我在很多群里面看到,很多刚刚入行的道友,或者刚刚入手Angular的道友,都说搭建开发环境好麻烦。有些人说搞了一整天都搞不定,于是就放弃了。看到这里,小僧很心痛啊!

于是,我就拿Ubuntu 16.04做了一个VMware镜像,把环境都搭建好了,你们只要把它下载下来,就可以上手玩儿NiceFish了。

VMware镜像百度网盘链接:https://pan.baidu.com/s/1pLlR4Rx

在VMware里面导入虚拟机ova文件之后,启动Ubuntu

虚拟机的用户名/密码是:angular/angular_2017

进入桌面环境之后启动命令行,进入/home/zhangxiaofei/workspace/NiceFish

运行ng serve命令

打开FireFox访问http://localhost:4200

【请注意】登录之后务必修改密码,否则引起安全漏洞后果自负!

【特别注意】如果你不幸居然安装好了环境并运行起来了,千万不要手贱去升级npm、node或者angular-cli,在目前这些版本下面升级必挂!

推荐项目

ng2整合各种插件的项目-Code Be https://git.oschina.net/zt_zhong/CodeBe

开源许可证

MIT

你可以随意使用此项目,无需通知我,因为我可能很忙没空搭理你。

关于我

我是大漠穷秋,目前是Google Angular项目组在中国的开发者PM,负责Angular的推广工作,我会在各种渠道经常发布一些与Angular相关的技术文章,希望能给大家带来一点点帮助,请点这里:https://my.oschina.net/mumu/blog

如果您的企业或者组织需要Angular方面的技术支持,请填写这份申请单:https://gdgdocs.org/forms/d/e/1FAIpQLSfKA15nS0md58fR__tAV6gSEIPsVsLksT9knOgObq9IbVPuQg/viewform

【注意】我每天都会收到大量的求助消息,真的有点忙,所以请准确描述您的问题,最好能加上一些截图,非常感谢!

在线交流QQ群

Angular 1区:286047042(满) Angular 2区:139357161(满) Angular 3区:473129930(将满) Angular 4区:483016484(空)

The MIT License (MIT) Copyright (c) 2016 大漠穷秋 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

NiceFish(美人鱼)是一个微型Blog系统,前端基于Angular 2。 展开 收起
TypeScript
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
TypeScript
1
https://gitee.com/DevilSoul/NiceFish.git
git@gitee.com:DevilSoul/NiceFish.git
DevilSoul
NiceFish
NiceFish
master

搜索帮助