『壹』 2020年Web前端自學之路指南
今天小編要跟大家分享的文章是關於2020年Web前端自學之路指南。許多人可能跟著網路上的各種教程就入了前端這行的門,但大多數都只是機械的學習著資料中的內容。俗話說,選擇要比努力重要。那麼學習開發,首先應該要有一個清晰的學習路線。希望這篇文章,能為大家在選擇未來的發展方向時提供一些參考和幫助。下面來和小編一起看一看吧!
1、基礎學習
●HTML+CSS基礎:
HTML進階、CSS進階、div+css布局、排版、html+css整站開發,樣式美化和瀏覽器兼容
●JavaScript基礎:
掌握js基本語法、條件、語句和循環、js內置對象常用方法、ECMAscript、DOM、BOM、定時器和焦點圖,並學習增強邏輯的常用演算法,實現木馬、拖放、放大鏡等常見的網路特效。
●JavaScript高級特性:
正則表達式與JSON、正則表達式案例、JavaScript原理與庫封裝、閉包、函數節流、作用域鏈、面向對象基礎、事件與運動框架封裝
●JQuery基礎使用:
DOM操作、特效和動畫、方法鏈、拖拽、變形、JQueryUI組件的基本使用,開發復雜的交互功能和效果,並能熟悉JQuery的插件開發機制。
2、HTML5+CSS3和移動Web開發
●HTML5:
HTML5新語義標簽、HTML5表單、音頻和視頻、離線和本地存儲、SVG、WebSocket
●CSS3:
CSS3新選擇器、偽元素、顏色表示法、邊框、陰影、background系列屬性改變、Transition、動畫、景深和深透、3D效果製作、Velocity.js框架、元素進場、出場策略、炫酷CSS3網頁製作
●圖像學:
Canvas、Canvas游戲、數據可視化、Heighcharts.js
●Bootstrap:
響應式概念、媒體查詢、響應式網站製作、刪格系統、刪格系統原理、Bootstrap常用模板、LESS和SASS
●移動Web開發:
跨終端WEB和主流設備簡介、流式布局、彈性盒子、rem、移動終端JavaScript事件、手機中常見JS效果製作、Zepto.js、商城頁面、滾屏
3、HTTP服務和AJAX編程
●WEB伺服器基礎:
伺服器基礎知識、Apache伺服器和其他WEB伺服器介紹、Apache伺服器搭建、HTTP介紹
●PHP基礎:
PHP基礎語法,使用PHP處理簡單的GET/POST請求
●AJAX上篇:
Ajax簡介和非同步的概念、Ajax框架的封裝、XMLHttpRequest對象詳細介紹方法、兼容性處理方法、Ajax框架的封裝、Ajax中緩存問題、XML介紹和使用
●AJAX下篇:
JSON和JSON解析、數據綁定和模板技術、JSONP、跨域技術、圖片預讀取和lazy-load技術、JQuery框架中的AjaxAPI用法、使用Ajax實現瀑布流案例
4、面向對象進階
●面向對象終極篇:
從內存角度到理解JS面向對象、基本類型、復雜類型、原型鏈、ES6中的面向對象、屬性讀寫許可權、設置器、訪問器
●面向對象三大特徵:
繼承性、多態性、封裝性、介面
●設計模式:
面向對象編程思維、單例模式、工廠模式、策略模式、觀察者模式、模板方法模式、代理模式、裝飾者模式、適配器模式、面向切面編程
5、封裝一個屬於自己的框架
●框架封裝基礎:
事件流、冒泡、捕獲、事件對象、事件框架、選擇框架
●框架封裝中級:
運動原理、單物體運動框架、多物體運動框架、運動框架面向對象封裝
●框架封裝高級和補充:
JQuery框架雛形、可擴展性、模塊化
6、模塊化組件開發
●面向組件編程:
面向組件編程的方式、面向組件編程的實現原理、面向組件編程實戰、基於組件化思想開發網站應用程序
●面向模塊編程:
AMD設計規范、CMD設計規范、RequireJS,LoadJS、淘寶的SeaJS、CommonJS、ES6Moles
7、工程化&構建、主流的框架
●Web開發工作流:
GIT/SVN、Yeoman腳手架、NPM/Bower依賴管理工具、Grunt/Gulp/Webpack、打包案例
●MVC/MVVM/MVW框架:
Vue.js、React、Angular.js、Backbone.js、Knockout/Ember、項目驅動
8、Node.js全棧開發
●快速入門:
Node.js發展、生態圈、Io.js、Linux/Windows/OS
X環境配置、REPL環境和控制台程序、非同步編程,非阻塞I/O、模塊概念,模塊管理工具、開發流程,調試,測試;掌握node.js全棧的解決方案和在伺服器端JS高效開發
●核心模塊和對象:
全局對象global,process,console,util、事件驅動,事件發射器、加密解密,路徑操作,序列化和反序列化、文件流操作、HTTP服務端與客戶端、Socket.IO
●Web開發基礎:
HTTP協議,請求響應處理過程、關系型資料庫操作和數據訪問、非關系型資料庫操作和數據訪問、原生的Node.js開發Web應用程序、Web開發工作流、Node.js開發Blog案例。
●快速開發框架:
Express簡介+MVC簡介、Express常用API、Express路由模塊、Jade/Ejs模板引擎、使用Express重構Blog案例、Koa等其他常見MVC框架。
●資料庫:
mongoose/mongoDB、MYSQL
●Node.js開發電子商務實戰:
需求與設計、賬戶模塊注冊登錄、會員中心模塊、前台展示模塊、購物車,訂單結算、在線客服即時通訊模塊
9、微信系列
●微信公眾號
JS-SDK配置、定製菜單、回調、定製分享內容、掃一掃、地理位置、微信音頻、圖像、語音識別功能、伺服器端curl
庫、支付、卡券、微店、微信開發模式與公眾號分析、統計分析
●微信小程序
小程序項目、uni-app、mpvue
10、移動APP(Web/Native/Hybrid)
●ReactNative簡介、ReactNative環境配置、創建項目,配置,編譯,調試,部署發布、原生模塊和UI組件、原生常用API
●Ionic簡介和同類對比、模板項目解析、常見組件及使用、結合Angular構建APP、常見效果(下拉刷新,上拉載入,側滑導航,選項卡)
11、其他
●職業素養
溝通表達、團隊合作、目標管理、時間管理、心態管理
●就業指導
簡歷&投遞技巧、面試&筆試技巧
12、推薦一些編程學習網站
01、嗶哩嗶哩
這個網站如果讓我評價,可謂是上邊的視頻都是非常高質量的,你可以去搜索看一下。
02、菜鳥教程
這個網站雖然不是視頻網站,一聽名字就知道適合菜鳥的,但是基礎的知識寫的非常詳細,很清晰易懂,非常適合剛開始學習編程的小夥伴。
03、W3School
之前剛開始學WEB開發時,經常在該網站,就是結合w3school學習前端,開發時,如果遇到記不清的標簽,就去w3school搜索,平常有時間,就來慕課看前端視頻。
類似這樣的學習網站還有很多,該開始入門的話上面的網站足矣。其他的網站推薦還有騰訊課堂、實驗樓、果殼MOOC學院等、知乎、掘金......
以上就是小編今天為大家分享的關於2020年Web前端自學之路指南的文章,希望本篇文章能夠對正在從事Web前端工作的小夥伴們有所幫助,想要了解更多Web前端知識記得關注北大青鳥Web培訓官網,最後祝願小夥伴們工作順利,成為一名優秀的Web前端工程師。
文章來源:原創前端猿前端猿指北
『貳』 js怎樣獲得後台Model中的值
一、通用的thymeleaf模板引擎通過returnmodel和view獲取後台返回的數據。項目中的pom.xml文件引用了與thymeleaf相關專的包。
『叄』 <script type="text/html" id="">js模版引擎內運行js腳本
你描述的比較亂,不過我大概能理解你的意思。
因為沒有具體的代碼,所以也只能說說思路。
按我的理解,重新描述你現在的問題是:
通過模板渲染,或者 ajax 非同步載入的 html 內容,會通過 innerHTML 或者一定的 DOM 操作,插入到文檔中。你希望在這段文檔碎片插入後,執行一些腳本。但是遇到的問題是:插入的腳本無法執行。
那麼我的建議的解決方法有以下幾種:
1、第一種方法,通過設置定時檢查,來判斷內容是否完成載入。
在{{data.content}} 中放一個 「標識」。例如:
<!--你正常的content內容-->
<p>。。。。。</p>
<!--特殊的標識-->
<spanid="a_special_id"></span>
然後在整個頁面的腳本中,加一個定時檢查器 (下面代碼放在整個頁面的 head 里):
varflag=false;//一個狀態標記,記錄需要進行的腳本是否執行過
//用來檢查的函數
functioncheck(){
//如果腳本已執行過,則退出,避免重復執行。
if(flag)return;
//嘗試獲取{{data.content}}中的「標識」
varobj=document.getElementById('a_special_id');
//如果獲取成功,說明代碼已經完成載入
if(obj){
//這里放上你想要進行的操作,例如你問題中的:
jQuery(document).ready(function(){
jQuery('.media-frame-content').css("height",winheight);
});
//設置狀態標記,避免腳本重復執行
flag=true;
}else{
//如果代碼沒有完成載入
//設置定時器,過一段時間再次檢查
setTimeout(check,100);
}
}
//開始檢查
check();
2、 第二種方法,是針對為什麼插入的腳本不能執行來解決的。
一般來說,通過 innerHTML 或者 DOM 方法插入的 script 腳本都不能正常執行。
那麼應該在你的模板解析函數中,進行一定的判斷處理。
例如 ajax 獲得伺服器返回的數據後,檢查有無 script 塊,如果有,則提取其內容,並通過 eval 來執行。
示例代碼:
//偽代碼,假設下面是一個通過ajax獲取get.php頁面得到返回數據的模式
$.ajax('get.php',function(data){
varreg=/<script>([sS]+)</script>/i;//正則
varsc;
if(reg.test(data)){
sc=data.match(reg)[1];//提取腳本
data=data.replace(reg,'');//移除腳本
}
container.innerHTML=data;//將html內容輸出到當前頁面
if(sc)eval(sc);//如果有腳本,則執行腳本
});
以上,請採納,請給分。
『肆』 如何使用網站模板
你下載psd這些沒有什麼用,你應該去下載那些帶網站後台的模板,去下載那些出名點的模板,比如pageadmin的網站模板、discuz的模板這些安全性高,功能強大,直接下載下來就可以做網站
『伍』 nodejs+express+ejs生成項目
一、說一下
首先保證node環境已經安裝完畢,npm能正常使用,安裝可自行網路,比較簡單,在此不做贅述。
node是否安裝成功
express是否安裝成功
二、直接開碼
安裝
注釋:
express:安裝express框架
express-generator:安裝express生成器,可快速生成一個應用的骨架
裂李-g:全局安答洞裝
注釋:
-e:簡寫,全稱為 --view=ejs ,安裝ejs模板引擎
myapp:項目名稱,自定義即可
生成如下目錄結構
注釋:
bin:存放啟動腳本文件
bin/www:啟動腳本文件,可修改埠號,等功能。
public:存放肆舉遲圖片,css,js等靜態文件
routes:存放路由模塊文件
views:存放視圖文件,使用的ejs模板引擎
app.js:入口文件,重要的配置文件
package.json:工程信息和安裝依賴文件
跟著提示執行下列語句
注釋:
cd myapp:進入myapp文件夾,文件名需修改成自己的項目文件名
npm install:安裝所有依賴模塊,常用的非指定性npm安裝命令
npm start:運行項目
(bin/www)
『陸』 關於AngularJS 框架的使用有哪些經驗值得分享
國內的確用的不多,但我們是一個,規模算大,用的人100左右,代碼100w行以上,以後還會增加。十多個系統,金融類核心系統。
經驗個人積累一點,可能和做互聯網應用尤其是spa不太一樣。
1. 業務類系統,趕快用吧,代碼量少一半一般,越復雜優勢越明顯
2. 性能很多坑,網上的方案不夠用的,ie8下很多不能直接the angular way,延遲載入是王道,多次bootstrap也常有,直接改源碼常有
3. ui控制項太少,完整套的要團隊自己開發維護,個性化需求更需要從最底層定製
4. 官方的檢驗機制要吃透,復雜檢驗需求變化很多,要設計足夠靈活,用watch $error方式又有性能坑
5. 指令是個好東西,重客戶端組件化的方向,要理解透,用好
6. 模型設計上,服務端的貧血,充血之分這里可以借鑒。另外模型分類命名空間很重要
如果你的頁面不復雜,就沒那麼多講究了
最後,seo的,建議html兩套,angular有類似工具