成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

使用hbuild快速構(gòu)建現(xiàn)代化web應(yīng)用

EastWoodYang / 1358人閱讀

摘要:使用快速構(gòu)建現(xiàn)代化應(yīng)用使用命令行工具,全局注冊(cè)后可快速生成項(xiàng)目啟動(dòng)套件。該套件包含如下特點(diǎn)其中是默認(rèn)全局引入的,可直接使用。

使用hbuild快速構(gòu)建現(xiàn)代化web應(yīng)用

Hbuild使用hbuild-cli命令行工具,全局注冊(cè)后可快速生成項(xiàng)目啟動(dòng)套件。你可以使用Hbuild生成一個(gè)h5項(xiàng)目,或者vue項(xiàng)目(默認(rèn)搭配react-router,可自由選擇vuex),或者react項(xiàng)目。該套件包含如下特點(diǎn):

Features

Vue2 / Vue-Router / Vuex (optional)

Hot reloading for single-file components

Webpack 2

babel (default)

LESS/SASS/Stylus (optional)

ejs/mustache/art-template (optional)

React / React-Router (optional)

zepto

autoprefixer (vue support)

mock server

eslint

Support for building multi-page applications

offline mode support

file hash

其中zepto是默認(rèn)全局引入的,可直接使用。h5項(xiàng)目可以選擇ejs,mustacheart-template模板引擎。 默認(rèn)支持Babel轉(zhuǎn)碼。支持HMR。支持文件指紋。

vue項(xiàng)目默認(rèn)支持vue-router,react項(xiàng)目默認(rèn)支持react-router

Get Started

You"d better have node >=6 and npm >=3 and gulp >=3.9 installed:

$ npm install -g hbuild-cli
$ h init new-project
 
# edit files and start developing
$ npm run dev
# bundle all scripts and styles for production use
$ npm run prod
 
# lint your js code
$ npm run eslint
Local Templates

when you clone this project,you can use a template on your local file system:

$ git clone [email protected]:hawx1993/hbuild.git
$ h init ./hbuild new-project
命令
$ npm run dev;//本地開(kāi)發(fā)模式,連接mock數(shù)據(jù)
$ npm run dev-daily;//本地開(kāi)發(fā)模式,連接daily日常環(huán)境數(shù)據(jù)
$ npm run dev-pre;//本地開(kāi)發(fā)模式,連接預(yù)發(fā)環(huán)境數(shù)據(jù)
$ npm run daily;//線上日常構(gòu)建模式,連接daily日常環(huán)境數(shù)據(jù)
$ npm run pre;//線上預(yù)發(fā)構(gòu)建模式,連接預(yù)發(fā)環(huán)境數(shù)據(jù)
$ npm run prod;//線上構(gòu)建模式,連接線上環(huán)境數(shù)據(jù)
$ npm run eslint;//js代碼審查,默認(rèn)檢查除lib文件夾下的js代碼
編譯

1.js代碼默認(rèn)采用Babel編譯,gulp + webpack打包構(gòu)建。

2.編譯后的html文件默認(rèn)輸出到build/pages目錄下,html文件名采用其在src/pages下的父級(jí)目錄的文件名

3.編譯后的靜態(tài)資源文件(圖片,字體,js文件等)存放到build/static目錄下,編譯支持文件hash,解決緩存問(wèn)題

4.支持代碼熱替換,熱替換失敗會(huì)自動(dòng)刷新整個(gè)頁(yè)面

5.開(kāi)發(fā)模式不對(duì)代碼進(jìn)行壓縮,sourceMap 只針對(duì)非開(kāi)發(fā)模式有效(not dev)

6.支持圖片壓縮

HTML和模板引擎

1.h5項(xiàng)目支持 ejs ,mustache和art-template模板引擎,默認(rèn)支持zepto

2.非本地開(kāi)發(fā)環(huán)境,html,js和css代碼會(huì)被壓縮

3.當(dāng)你在pages下新建一個(gè)目錄時(shí),html文件需要手動(dòng)配置一下靜態(tài)資源的引用,例如在index目錄下:

CSS和預(yù)處理器

1.支持css預(yù)處理器LESS、SASS和stylus (optional);

2.默認(rèn)采用css-in-js的方式,可在hbuild.config.js文件中配置是否多帶帶提取css,提取出的css文件名稱默認(rèn)為:[name].css,name為src下less/scss/stylus文件名

3.開(kāi)啟提取css文件,需要在HTML中引入,引入方式同js

4.支持 屏幕適配方案,采用media-query+rem的方式,默認(rèn)在common.less文件中

5.支持postcss和autoprefixer

代碼檢查

1.npm run eslint 支持vue單文件組件,支持es6語(yǔ)法檢查

其他

mock:mock 數(shù)據(jù)只需要接口URI路徑和mock目錄保持一致即可

接口:接口如需根據(jù)環(huán)境來(lái)替換,需在hbuild.config.js文件和common/js/config文件進(jìn)行配置

支持多入口文件,可在pages下新建目錄,文件名需以index開(kāi)頭

字符串替換:$$_CDNPATH_$$會(huì)被編譯替換為build/static/hash目錄,$$_STATICPATH_$$會(huì)被替換為build/static/hash/assets

入口文件:腳手架默認(rèn)會(huì)讀取pages目錄下的index開(kāi)頭的js文件為入口文件,名稱是寫(xiě)死的

修改默認(rèn)文件夾的名稱,需要在hbuild.config.js文件就對(duì)應(yīng)文件變量做修改

目錄結(jié)構(gòu)
.
├── README.md
├── build                       # 構(gòu)建工具目錄
│    └── gulpfile.js            # gulp文件
│    └── postcss.config.js      # postcss配置文件
│    └── util.js                # gulp腳手架工具方法
│    └── hbuild.config.js       # 腳手架配置文件
├── mock                        # mock數(shù)據(jù)目錄,保持和接口一樣的路徑即可
│   └── h5
├── package.json    
├── src                         # 源文件 
│   ├── assets                  # 靜態(tài)資源目錄,存放圖片或字體
│   │   └── logo.ico
│   ├── common                  # 共用代碼目錄,css目錄存放公用css部分,js同理
│   │   ├── css
│   │   │   ├── common.less
│   │   │   └── common.scss
│   │   └── js
│   │       ├── api.js          # api文件
│   │       ├── config.js       # 配置文件
│   │       └── util.js         # 工具函數(shù)文件,可將公用方法存放于此
│   ├── components              # 組件目錄
│   │   ├── counter             # 計(jì)數(shù)器vue組件
│   │   │   └── index.vue
│   │   ├── index               # vue組件的入口文件
│   │   │   └── index.vue
│   │   ├── meta                # h5 meta頭部信息模塊
│   │   │   └── index.html
│   │   ├── router              # vue路由模塊
│   │   │   └── router.js
│   │   └── store               # vuex store模塊
│   │       └── store.js
│   ├── lib                     # 第三方庫(kù) 
│   └── pages                   # 頁(yè)面    
│       └── index               # 首頁(yè)目錄,可在pages目錄下新建多個(gè)目錄結(jié)構(gòu),作為多入口文件
│           ├── index.html
│           ├── index.js        # index.js/index.jsx文件為webpack的入口文件
│           ├── index.jsx
│           ├── index.less      # 樣式文件在js文件中引入,可設(shè)置是否提取出css文件     
│           ├── index.scss
│           └── module          # 頁(yè)面模板模塊,可在index.js/jsx文件引入該模塊文件
│               ├── main.jsx
│               └── main.tpl.html
└── yarn.lock
ChangeLog

changelog

License

MIT ? hawx1993

項(xiàng)目地址

https://github.com/hawx1993/h... 歡迎star or issue

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/83142.html

相關(guān)文章

  • 如何優(yōu)雅的使用vue+Dcloud(Hbuild)開(kāi)發(fā)混合app

    摘要:而是不會(huì)生成文件夾以及那些靜態(tài)文件的,也就是說(shuō)沒(méi)有生成物理文件,而是放在了內(nèi)存中,我們是沒(méi)有辦法拿到這些靜態(tài)文件的。首先現(xiàn)在項(xiàng)目中安裝一下該插件,。這時(shí)如果打開(kāi)項(xiàng)目進(jìn)行開(kāi)發(fā),比如修改了,只需要保存一下,就會(huì)在手機(jī)上看到更改后的效果。 如何優(yōu)雅的使用vue+Dcloud(Hbuild)開(kāi)發(fā)混合app 最近在做混合app,前端框架用的是vue,打包app使用的是Dcloud,不過(guò)在開(kāi)發(fā)過(guò)程...

    zhaofeihao 評(píng)論0 收藏0
  • 如何優(yōu)雅的使用vue+Dcloud(Hbuild)開(kāi)發(fā)混合app

    摘要:而是不會(huì)生成文件夾以及那些靜態(tài)文件的,也就是說(shuō)沒(méi)有生成物理文件,而是放在了內(nèi)存中,我們是沒(méi)有辦法拿到這些靜態(tài)文件的。首先現(xiàn)在項(xiàng)目中安裝一下該插件,。這時(shí)如果打開(kāi)項(xiàng)目進(jìn)行開(kāi)發(fā),比如修改了,只需要保存一下,就會(huì)在手機(jī)上看到更改后的效果。 如何優(yōu)雅的使用vue+Dcloud(Hbuild)開(kāi)發(fā)混合app 最近在做混合app,前端框架用的是vue,打包app使用的是Dcloud,不過(guò)在開(kāi)發(fā)過(guò)程...

    fsmStudy 評(píng)論0 收藏0
  • 一個(gè)專(zhuān)為構(gòu)建現(xiàn)代PHP應(yīng)用而生的Web框架

    摘要:一個(gè)專(zhuān)為構(gòu)建現(xiàn)代應(yīng)用而生的框架是一個(gè)強(qiáng)大靈活的框架。與其他框架有什么不同速度和簡(jiǎn)單。本文也對(duì)這個(gè)當(dāng)今最流行之一的框架做了一個(gè)明確的介紹。到本系列的最后部分,你會(huì)感覺(jué)到用從頭開(kāi)始編寫(xiě)一個(gè)完整的應(yīng)用是多么的舒服。 一個(gè)專(zhuān)為構(gòu)建現(xiàn)代PHP應(yīng)用而生的Web框架 Laravel是一個(gè)強(qiáng)大、靈活的PHP框架。它有非?;钴S的社區(qū)和工具生態(tài)系統(tǒng)。因此它越來(lái)越吸引人。Laravel的文檔寫(xiě)的也是非常的詳...

    layman 評(píng)論0 收藏0
  • 宣布 Parcel:一個(gè)快速,零配置的 Web 應(yīng)用打包工具 ?

    摘要:宣布一個(gè)快速,零配置的應(yīng)用打包工具原文譯者今天,我非常高興地宣布,一個(gè)快速,零配置的應(yīng)用程序打包工具,我對(duì)于該工具的工作已經(jīng)持續(xù)了幾個(gè)月。性能我被激發(fā)建立一個(gè)新的打包工具的第一個(gè)原因是性能。 ? 宣布 Parcel:一個(gè)快速,零配置的 Web 應(yīng)用打包工具 ? 原文:? Announcing Parcel: A blazing fast, zero configuration web...

    learn_shifeng 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<