A. 如何將前端開發的網頁封裝成手機app
這里介紹一種將前端網頁打包櫻寬成手機app的工具—HBuilder,可以快速將前端網頁打包為手機app,使用起來非常方便,下面我簡單介紹一下實現過程,主要內容如下脊伏亮:
1.下載安裝HBuilder,這個直接到官網上下載就行,免費的,目前來說,有Windows和Mac平台的,這里我們選擇APP開發版:
2.下載完成後,我們解壓這個zip壓縮包,解壓後的文件如下:
3.接著,我們雙擊打開HBuilder,依次點擊「文件」->「新建」->「項目」,選擇「5+APP(A)」,同時勾選「HelloH5+」,輸入項目名稱,如下:
這里為了方便演示,我新建了一個app.html,主要代碼如下,其實就是一個簡單的登陸頁面,文本框輸入內容,然後點擊登陸列印出來:
用瀏覽器打開這個html文件,效果如下:
4.接著,就是打包程序了,雙擊打開mainfest.json配置文件,點擊「雲端獲取」,獲得唯一的「應用標識(AppID)」,同時設置一下「應用入口頁面(首頁)地址」,即上面的app.html,如下:
5.配置mainfest.json完成後,我們右鍵APP項目,在彈出的菜單中依次選擇「發行」->「原生App-雲端打包(P)」,就會彈出打包窗口,這里我打包的是安卓app,故選擇Android,如果你打包的是蘋果app,選擇iOS就行,完成後,直接點擊右下角的「打包」按鈕就行:
6.雲端打包成功後,就會生成app的下載鏈接,這里我們直接點擊下載到本地,如下,只有5次下載機會,到此,app已經打包完成:
7.最後,我們將打包後的安裝文件發送到手機上,安裝後的效果如下:
至此,我們就完成了將前端網頁打包成手機app。總的來說,整個過程不難,就是配置步驟相對復雜一些,只要你按著步驟多操作幾遍,熟悉一下相關參數配置,很快就能掌握的,不難,這里你也可以把界面寫的更漂亮、美觀一些,然後再打包,網上也有相關教程和資料,感興趣的話,可以搜一下,希望以上分享的內容廳培能對你有所幫助吧
B. php+h5混合編程的web項目怎麼打包生成apk
工具有:
cordova (這個前端使用ionic 後台介面使用php 可使用node.js 命令行本地打包)
cocoonJS (在線打包工具,主要針對HTML5游戲吧。用的少,可以試下)
hbuilder(樓上也有提到。將網址配置到工具中 可以自己添加統計和推送代碼 然後打包有【android】.apk 【iphone】.ipa)
C. 【Web前端基礎】webpack打包原理是什麼
【Web前端基礎】webpack打包原理是什麼?1、概念
本質上,webpack 基於node平台,利用 node 的各種api來實現 javascript 應用程序的一個靜態模塊的打包工具。
在打包過程中,構建依賴關系,並且實現模塊引用預處理,以及緩存等。
2、分析
1、人口文件
// mian.js
const a = require('./m1')
const b= require('./m2')
import { test } from './m1'
console.log(test)
//m2.js
export default {
b:2
}
//m1.js
export const test = {test:1}
export default {
a:1
}
2、生產的文件
(function (moles) {
var installedMoles = {}; //緩存
/*
* 載入模塊函數
* 傳入模塊id
* */
function __webpack_require__(moleId) {
// 檢查緩存中是否有模塊
if (installedMoles[moleId]) {
return installedMoles[moleId].exports;
}
// 創建一個新模塊,並緩存起來
var mole = installedMoles[moleId] = {
i: moleId,
l: false,
exports: {}
};
// 調模塊的函數,moles
moles[moleId].call(mole.exports, mole, mole.exports, __webpack_require__);
mole.l = true;
// 返回對應模塊
return mole.exports;
}
__webpack_require__.m = moles;
__webpack_require__.c = installedMoles;
__webpack_require__.d = function (exports, name, getter) {
if (!__webpack_require__.o(exports, name)) {
Object.defineProperty(exports, name, {
configurable: false,
enumerable: true,
get: getter
});
}
};
__webpack_require__.n = function (mole) {
var getter = mole && mole.__esMole ?
function getDefault() {
return mole['default'];
} :
function getMoleExports() {
return mole;
};
__webpack_require__.d(getter, 'a', getter);
return getter;
};
__webpack_require__.o = function (object, property) {
return Object.prototype.hasOwnProperty.call(object, property);
};
__webpack_require__.p = "";
// 載入入口文件
return __webpack_require__(__webpack_require__.s = 0);
})
([
(function (mole, exports, __webpack_require__) {
const a = __webpack_require__(1)
const b = __webpack_require__(2)
}),
(function (mole, __webpack_exports__, __webpack_require__) {
"use strict";
Object.defineProperty(__webpack_exports__, "__esMole", {value: true});
__webpack_exports__["default"] = ({
a: 1
});
}),
(function (mole, __webpack_exports__, __webpack_require__) {
"use strict";
Object.defineProperty(__webpack_exports__, "__esMole", {value: true});
__webpack_exports__["default"] = ({
b: 2
});
})
]);
觀察以上代碼得到結果:
1、打包後的代碼是一個立即執行函數,且傳入的參數為一個數組
2、參數數組就是我們引用的模塊
3、每一個模塊對應著數組的位置就是那麼的id
4、在立即函數中載入入口文件,並執行
__webpack_require__ : 載入並執行某一個模塊並將模塊緩存在 installedMoles 中。
moles[moleId].call(mole.exports, mole, mole.exports, __webpack_require__);
這里是執行引用的某一個模塊。
並將mole,exports,require 加入模塊中。
這也是為什麼我們在模塊中有全局變數 mole/exports/require
通過對打包後的文件分析,基本可以完全理解打包過程。
D. 你最喜歡用哪款前端開發工具為什麼
前端開發最爽的地方就在於,一個編輯器,一個瀏覽器就足矣走天下。
編輯器——VSCode前端開發利器,超級好用的編輯器,對於大前端來說更是不可多得。由微軟出品,跨平台支持,顏值高,易上手,豐富的插件支持。下面推薦幾個前端常用插件。
調試工具: 前端性能優化工具:
Yellow Lab Tools :一款Web性能及前端質量測試工具。與其他工具不同的是,它有一些在其他工具上無法看到的獨特功能,例如頁面載入時 JavaScript 與 DOM 互動和其他程序代碼驗證問題。
DOM monster :你只需要添加到你的瀏覽器書簽中,在任何需要調試的頁面點擊這個書簽,它就能夠幫助你列出目前頁面出現的性能問題。
前端開發是目前一個非常火的行業,就業前景和薪資水平都非常不錯,至於開發工具的話,那就非常多了,大部分代碼編輯器、IDE環境都支持,下面我簡單介紹4個非常不錯的前端開發工具,感興趣的朋友可以嘗試一下:
01 代碼編輯器這是目前前端開發一個非常流行的開發工具,在業界非常受歡迎,免費、開源、跨平台,由微軟自主研發,可以說是良心產品,常見的智能補全、代碼高亮、語法提示等功能這個軟體都能很好支持,除此之外,插件擴展非常豐富,可以很好的進行代碼編輯和調試,輕巧靈活,運行速度快,對於前端開發來說,是一個非常不錯的選擇:
這也是一個比較輕巧靈活的代碼編輯器,文本編輯功能強大,完美支持3大操作平台,但原則上不免費,和VS Code類似,Sublime Text也支持自動補全、語法提示、代碼高亮等常見功能,除此之外,針對前段開發也提供了非常多的插件,不管是編輯還是調試代碼來說,都非常方便,對於前端開發來說,也是一個不錯的選擇:
02 IDE環境
這是一個純粹的國產Web IDE開發工具,目前在前端開發中也有著較高的使用率,常見的自動補全、代碼高亮、語法提示、錯誤檢查等功能這個軟體都能很好兼容,除此之外,界面柔綠、清爽護眼,針對Vue專門打造了插件擴展,可以很好的提高開發效率,還支持安卓、iOS打包,對於前端開發來說,也是一個非常不錯的工具:
這是一個非常專業的Web IDE開發工具,Jetbrains公司的產品,被譽為「Web前端開發神器」、「最智能的JavaScript IDE」,除了基本的智能補全、代碼高亮、語法提示等常見功能,這個軟體還支持代碼分析與重構、 聯想查詢、 單元測試等高級功能,因此在開發效率上更高,也更適合大型項目,對於多人協作的前端開發來說,是一個非常不錯的選擇:
WebStorm
和idea同屬於jetbrains公司開發的,它是旗下一款JavaScript開發工具,被廣大中國JS開發者譽為「Web前端開發神器」、「最強大的HTML5編輯器」、「最智能的JavaScript IDE」等。
早起作為一個插件可以集成與Eclipse中來開發前端,現在已經獨立出來,也是我最早接觸js所使用的一款開發工具,如果熟悉了Eclipse快捷鍵的童鞋可以快速上手。
一款代碼編輯器,藉助豐富的插件資源,可以擴展成強大的前端開發工具,和IDE相比,屬於一款輕量級的,啟動特別快。
Atom
作為開源老大哥GitHub出的一款代碼編輯器,和上面那個比較而言,插件略少,但和GitHub無縫結合,尤其是markdown編寫,界面也很漂亮。
TextMate是Mac下的著名的文本編輯器軟體,與BBedit一起並稱蘋果機上的emacs和vim。尤其適合程序員使用,可以定製許多貼心使用的功能。
Emacs即Editor MACroS(宏編輯器),是一種強大的文本編輯器。Emacs使用了Emacs Lisp這種有著極強擴展性的編程語言(它的核心是一個Emacs Lisp解釋器),並實現了文本編輯支持等的擴展。
Notepad++是 Windows操作系統下的一套文本編輯器(軟體版權許可證: GPL),有完整的中文化介面及支持多國語言編寫的功能(UTF8 技術)。
VSC-VSCode
輕量快速,高顏值,社區開源,豐富擴展,微軟支持
還有超好用的遠程開發(vscode remote)和協作(live share)支持
HTML通常會和JavaScript、CSS同時出現。三者均是前端開發最常用到的。目前最常用到的HTML其實就是HTML5。常用的前端編程軟體有HBuilder、Sublime Text等等。
HBuilder是一款免費的國產前端開發工具,編者用的就是HBuilder,對於小白和英語不太好的前端開發者這是一款難得的IDE。對代碼自動補全方面簡直是強大到沒朋友。強力推薦。
Sublime Text是一個輕量級的編輯器,不端支持前端的html,js,css。還支持覺得多數的後端語言,比如C語言、java、python等。sublime text的強大之處是支持各種插件而且快捷鍵非常好用,可以極大的提高開發效率。缺點是代碼提示方面不如Hbuilder。
很高興能回答你的問題,作為一個後端開發,也曾經開發過前端,也用過很多前端開發工具。
1.sublime text用著確實不錯,但是代碼開發提示不強,平時用著文本編輯器還是可以的。
2.hbuild+用了一段時間各種不適用,最後就卸載了。
3.vs code用著一段時間寫vue,需要安裝插件,而且提交代碼用感覺不方便,把不想提交的最後提交了,導致代碼沖突,也許是因為自己用不熟。
4.webstorm 推薦使用,代碼智能提示,而且提交代碼方便。
無論是Python、Java、javascript,當我們選擇一款開發工具時,很多人都會首先想到jetbrain全家桶,Webstorm、IDEA、Pycharm....不得不說,jetbrain在開發工具方面真的是頗有心得、爐火純青。
但是,如果做前端開發,我認為除了jetbrain的webstorm,還有很多選擇,而其中我最為推薦的當屬VS Code,下面就來介紹一下。
VS Code
微軟在開發工具領域已經有了多年積淀,而VS Code有時微軟結合了visual studio和其他開發工具,不斷改進、優化推出的一款免費開發工具。
可以說VS Code是當下最為熱門的開發工具之一,對比於eclipse、IDEA這些老牌開發工具,微軟對於VS Code的改變更為大膽創新,已經處於領頭羊的地位。每年微軟開發者大會,都會對 VS Code進行大幅度的創新,經過多年的優化,VS Code已經讓很多開發者愛不釋手。
首先說一下它幾個為人熟知的優點,
首先說一下輕量化,我覺得僅憑這一點,就足以讓jetbrain全家桶汗顏。無論是webstorm、還是IDEA,最令人痛苦的就是打開過程,臃腫、漫長,載入工程項目和配置項需要多大幾分鍾,令人無法忍受。而VS Code則不同,它更像一個編輯器,能夠秒級打開,速度堪比UE、notepad++這些文本編輯器。
其次說一下豐富插件,豐富的插件造就了VS Code完整的生態,「你想要的,這里都有」,無論是標簽樣式還是DEBUG或者功能增強,VS Code都有非常多熱門的插件,使得你的開發效率大大提升,當然,前端需要的那些優質插件這里都有。
其實,讓我轉向VS Code並非上述這兩點,而是 遠程開發 。
我覺得這是微軟大膽創新和引領者角色必然的產物,讓很多其他開發工具很難望其項背。
有了VS Code遠程開發功能,我們可以實時同步本地和伺服器代碼,不需要再去復雜的配置遠程伺服器,對於項目管理也非常方便。
WebStorm和PS
尤其PS,平時生活中也需要用到,挺方便的
喜歡用webstorm,atom和vs code,sublimetext都裝了,幾乎只用webstorm,atom界面是漂亮,也是我第一個下載安裝的,裝了各種插件,那時初學,感覺提示不全,還有就是插件安裝了幾個後開機明顯變好慢,無奈下了webstorm,感覺很爽
Google PageSpeed Insights 可以為網站生成性能報告,它在移動設備和桌面設備上都是免費的。並且還給出了影響頁面載入速度的原因,並為這些問題提供了解決方案。網站速度按照 100 分進行劃分,其中:
2. Pingdom Website Speed Test
Pingdom Website Speed Test 可以全面分析影響頁面Web速度的因素。此外,還可以查看網站在亞洲、歐洲等多個不同的地理位置的性能信息。
3. WebPagetest
WebPagetest是 AOL 開發的一款在線的免費性能評測網站,從全球多個地點運行免費網站速度測試。可以運行簡單的測試或執行高級測試,包括多步驟事務、視頻捕獲、內容阻塞等等。還將依據測試結果提供豐富的診斷信息,包括資源載入瀑布圖,頁面速度優化檢查和改進建議,會給每一項內容一個最終的評級。
4. GTmetrix
GTmetrix 是一個類似於 pingdom 的工具,可以快速輕松地測試網站速度。它主要有PageSpeed和YSlow兩部分組成,並提供相應的得分數據,能夠真實的反應出網站的性能,並且會提供可行性建議來幫助改善網站性能。
5. Keycdn Tool
Keycdn Tool 是一個在全球 10 不同地點的網站速度測試工具。它允許測試任何頁面的性能。返回的結果將提供請求、內容大小和載入時間等詳細信息。此外,還有一個完整的瀑布圖,詳細說明了每個資源的載入時間和 HTTP 頭。
6. GiftOfSpeed
GiftofSpeed是一款免費網站載入速度測試工具,可以在上面獲得網站綜合性能信息,它能夠展示網站載入時間以及評估網站有哪些需要改進的地方,並給予一個客觀的綜合評分。
GiftofSpeed 的測試結果以瀑布流展示,可以很容易看到網站載入速度,每一項資源的的載入順序、大小與響應時間的長短,方便了解網站的各項載入資源。此外,它還提供了載入時間最長的內部文件以及外部文件,從而分析出是由哪些因素影響了你網站的載入速度,就可以專門針對這些載入時間較長的元素進行優化,從而最大限度提升網站載入速度。
7. Pagelocity
Pagelocity 是一個網站分析性能測試工具。這個工具也提供了追蹤競爭對手的能力。代碼檢視圖在類似工具中是獨一無二的。如果想知道 TTFB 和圖形化 DOM 元素等,都能通過這項工具獲取到。
8. Sucuri Loadtime Tester
Sucuri Load Time Tester 是一個網站分析性能測試工具,它用不同的顏色表示網速快慢,可以很直觀地看出測試網站在不同國家的運行速度。綠色表示暢通,沒有顏色的普通數字表示一般,黃色表示中等偏慢,紅色表示緩慢。
9. GEEKFLARE
GEEKFLARE 這是一套免費的性能測試工具,用於測試網站的 DNS、安全性、性能、網路和 SEO 等問題。
10. Dareboost
DareBoost 是一個免費網站速度測試和網站分析工具。它提供超過 100 種不同的檢查項目用以分析你的網站的速度。可以測試桌面端與行動頁面、Firefox 與 Chrome 和五個節點的速度差異。
E. Web前端開發需要哪些工具
前端開發中需要掌握最基礎的技能就是HTML、CSS,JavaScript。前端的開發中,在頁面的布局時, HTML將元素進行定義,CSS對展示的元素進行定位,再通過JavaScript實現相應的效果和交互,在進行開發前,需要對這些概念弄清楚,才能進行合理的開發。
在網頁建設的過程中,為了避免代碼的繁瑣雜亂,更高效快速地完成任務,就會使用到一些有代碼高亮提示和語法提示等便捷功能的前端開發工具。
1,Dreamweaver:中文名「夢想編織者」。是集網頁製作和管理網站於一身的所見即所得網頁代碼編輯器。它可以使用所見即所得的介面,亦有HTML編輯的功能,藉助經過簡化的智能編碼引擎,輕松地創建、編碼和管理動態網站。訪問代碼提示,即可快速了解 HTML、CSS 和其他Web 標准。 使用視覺輔助功能減少錯誤並提高網站開發速度。
2,Sublime:Sublime Text 是一個代碼編輯器,也是HTML和散文先進的文本編輯器。Sublime Text 的主要功能包括:拼寫檢查,書簽,完整的 Python API , Goto 功能,即時項目切換,多選擇,多窗口等等。
3,HBuilder:是DCloud,推出的一款支持HTML5的Web開發IDE。 HBuilder的編寫用到了Java、C、Web和Ruby。HBuilder本身主體是由Java編寫。
有了工具,接下來還得靠我們人來操作。你必須熟悉三種語言,把這些概念弄明白,才能開發出好的作品。
F. web前端打包工具有哪些
工具很多,目前常用的是webpack, grunt等,在沒出現更好的工具之前,學好這兩個其中的一個基本都夠用了。
G. 如何通過 Vue+Webpack 來做通用的前端組件化架構設計
angular:
我覺得angularjs的學習上手周期比較長,可能遇到問題,都無法立刻解決,而且編碼的質量明顯的很差,如果團隊沒有制定規范,那寫出來的代碼就沒法看。對於一個選用angularjs的團隊來說,我認為編碼規范是很重要的,否則對編碼能力是沒有提升的。
avalon:
avalonjs文檔資料沒有那麼全,我感覺一些開源支持的力量不夠多。不過,如果有項目需求,需要去做IE瀏覽器的支持話,我建議選擇avalonjs
vue:
vuejs 文檔比較齊全,vue吸取了angularjs
的一些優點,規避了一些缺點,至少編碼規范上有了一個質的飛躍,學習上手的周期比較短。vue起初只是一個輕量級的類庫,用來做類似於react的事情,
同時vue也是可以拿來做前端架構設計的,比如:vueify + vue-router (spa框架)。
vue學習地址:http://cn.vuejs.org/
以上說了那麼多沒用的,下面就來點幹活了!
我的前端組件化架構設計,目錄如下:
項目架構用到的知識點,還是挺多的,知識清單如下:
[1]: gulp + webpack 構建打包工具, 使用了一系列的loader,比如:vue-loader, sass-loader, babel-loader , 以及 postcss,postcss-custom-properties,等等
[2] : postcss-custom-properties : 用來做樣式全局化, 只需要通過變數去維護,通過編譯變數既可以換膚。
[3] : vue-loader (vue文件組件化):用來去編譯處理 *.vue 的文件,一個vue 文件就是一個單獨的組件,vue組件開發具有高獨立且易維護。組件的劃分可大可小,一個頁面也可以看作成由多個vue 組件構成的,一個頁面也可以是一個vue組件, vue 文件結構如下:
[4] : babel-loader :實現對vue文件中 es6 語法的編譯解析
[5] : vue-router :用來做路由分發,而且文檔非常的齊全(學習地址:http://vuejs.github.io/vue-router/zh-cn/index.html)。
[6] : vue (插件式方式):vue本身提供了一個install 方式用來注入,我們可以注入一些全局的(屬性、方法、以及通用的ui組件)。
下面說說文件夾的含義:
common 文件夾: 是用來存一些通用的東西,比如樣式,以及全局的js等等
components 文件夾:用來放獨立的組件,我打算後期做細分,ui 組件,以及page 組件等等,這裡面就是團隊的心血,以後就能做成獨立的組件庫了。
filters 文件夾:用來放通用的過濾器操作。
plugins 文件夾:用來放 Vue.use 注入到Vue全局的插件庫,比如:請求載入、彈框、分頁、ui組件 等等。plugins 只是把 componets 組件暴露給 Vue全局。
views 文件夾: 用來存放頁面模塊
app.vue 文件:第一次啟動的主程序模塊
app.js 文件:啟動前的載入,注入,實例化
router.config.js 文件:路由模塊
目前該架構在前後台的SPA架構都適用,可能還是有很多不完善,不過我還很年輕,vue也還狠年輕,望各位道友多給我們年輕人一些機會。
H. 前端打包,怎麼只替換修改的文件,而不是整個項目替換
使用打包工具後無法之修改制定的文件
1、打包工具是在源碼發生了變化後重新打包編譯源代碼,打包工具並不能區分具體生成後打哪些文件發生了變化
2、所以如果打包整個項目比較慢的話可以考慮優化打包速度,一般是不支持只替換修改的文件的
I. 前端項目gulp編譯工具打包慢怎麼辦
下面幾個插件,按需索取哈,反正我是都有了。
有多文件用的,有對dev-watch時用的,都有效果。
https://www.npmjs.com/package/gulp-cache
https://www.npmjs.com/package/gulp-cached
https://www.npmjs.com/package/gulp-remember
https://www.npmjs.com/package/happypack
先上圖
等views下面業務模塊有50+,widget目錄下面有20個左右。。。那編譯一次真的是呵呵呵
所以我們增加了一個.localBuildConfig.js
讓同學們只編譯/監聽自己想要的文件即可,同時在編譯log中給予提示
J. 前端構建工具和打包工具有啥區別
Webpack是一個前端模塊化方案,更側重模塊打包。我們可以把開發中的所有資源(圖片、js文件、css文件等)都看成模塊,通過loader(載入器)和plugins(插件)對資源進行處理,打包成符合生產環境部署的前端資源。
Webpack就是需要通過其配置文件(Webpack.config.js)中 entry 配置的一個入口文件(JS文件),然後在解析過程中,發現其他的模塊,如scss等文件,再調用配置的loader或者插件對相關文件進行解析處理。
兩者區別
雖然Gulp 和 Webpack都是前端自動化構建工具,但看2者的定位就知道不是對等的。Gulp嚴格上講,模塊化不是他強調的東西,旨在規范前端開發流程。Webpack更明顯的強調模塊化開發,而那些文件壓縮合並、預處理等功能,不過是他附帶的功能。
以上就是介紹的前端構建工具 Gulp 和 Webpack,以及兩者之間的區別。如今互聯網發展迅速,Web前端人員也應該與時俱進的不斷學習。