跳到主要內容

發表文章

目前顯示的是 2017的文章

aliases in Window command

大家好,我是奶綠茶 身為前端,每天最常打的指令就是 npm run start npm run build npm run 什麼的 在 Mac 可以方便的將指令設定別名縮寫 那 PC 上呢 ? 可以用 doskey ns=npm run start 但每次啟動 cmd 都要重新設定 可以透過以下方法整合到 vsCode 設定你的 ailases 奶綠我將檔案放在 E:\aliases.cmd @echo off doskey n=npm run $* doskey ns=npm run start doskey nb=npm run build doskey s=npm run start doskey b=npm run build 開啟 vsCode Settings.json, 加入以下設定 "terminal.integrated.shellArgs.windows": [ "/k", "e:\\aliases.cmd" ] 好了,這樣每次開啟 terminal 就可以有縮寫功能 轉載請註明出處

超好用的無限免費網頁空間,無廣告,無流量限制

大家好,我是奶綠茶 今天來教大家如何申請一個無限免費速度又快的網頁空間 1 首先到  https://github.com/ 申請帳號(一直下一步,下一步,下一步) 2 到你的個人頁,切換上方的 tab 到 Repositories, 按下右鍵的 new 3 Repository name 一定要是這樣的格式 username.github.io 我的 github 網址是 github.com/milkmidi 那就要輸入 milkmidi.github.io 選擇 public, 這樣別人才看的到 private 有其他用途, 而且要付費才能使用 完成後按下 Create repository 5 安裝 SourceTree github 並不支援 FTP 或是網頁上傳,一定要透過指令碼 在這我們選用有圖型介面的軟體,方便大家學習 https://www.sourcetreeapp.com/ 下載並安裝 啟動後登入你的 github 帳號 6 clone 你的 github io 專案 右上角有個 Clone or download 點選後 複製 https 連結(不要選到 ssh ) 7 將 https 的連結貼到 SourceTree 8 上傳 html 到本機 github.io 資料夾,放一個 index.html 切換到 SourceTree, 這時會看到 Unstaged files 的欄位 選擇 Stage All 9 git 要求每次的 Commit, 都一定要打說明文字(好習慣) 輸入完成後,按下右邊的 Commit 10 發佈(Push),這樣就完成啦 可以到你的 http://milkmidi.github.io/ 去查看檔案有沒有出來 其他 Commit 可以想像是做一個記錄,你可以很多的 Commit 最後再一次 Push 上去 github 原本是給程式設計師用的版本控管服務 免費版提供無限空間讓你放檔案,但一定要是 public 想要有私有的 Project ,就只能付費 github.io 只能放靜態檔案,php, aspx 服務並不支援。 祝大家學習愉快 轉載請註明出處 奶綠的 github.io S

mac backspace char ASCII 08

大家好,我是奶綠茶 最近在 mac 上踩到一個雷 不知道在什麼情況下,文字會多出一個 backspace 元字 在 PC 上會出現一個黑圓點 偏偏 VSCode 預設是不會顯示( Sublime 會出現白底黑字的BS標示) 然後被包在 JS 裡的字串,一切就爆掉了。 解法 VSCode 在 View / Toggle Control Character 這樣該字元就會顯示一個小字的 BS

gulp 前端自動化 - spritesheet

大家好,我是奶綠茶 今天來介紹如何使用 gulp 來自動化將圖片拼成 spritesheet 奶綠我使用的套件是 gulp.spritesmith https://www.npmjs.com/package/gulp.spritesmith 可以使用 handlebars 格式,拼出自己想要的 css 格式 {{#sprites}} .{{name}} { background-position: {{px.offset_x}} {{px.offset_y}}; width: {{px.width}}; height: {{px.height}}; background-image: url({{{escaped_image}}}); } {{/sprites}} gulp 的設定 gulp.task('sprite',()=>{ console.log('sprite'); const spriteData = gulp.src('src/sprite_src/*') .pipe(spritesmith({ imgName: '../img/sprite.png', cssName: '_sprite.css', padding: 4, imgOpts: { quality: 100 }, cssTemplate: 'src/css/handlebars/basic.handlebars', })); const imgStream = spriteData.img .pipe(buffer()) .pipe(gulp.dest('dist/img/')); const cssStream = spriteData.css .pipe(gulp.dest('src/css')); return merge(imgStream, cssStre

2017 線上讀書會- vuex 跟 webpack 與 架構範本

分享一下奶綠我在 2017 02 線上讀書會 主講 vuex , webpack 的影片 轉載請註明出處 Github Source Code

webpack2 入門實戰 3 scss,html,file-loader

大家好,我是奶綠茶 上一篇 介紹了 webpack 的核心功能 loader 這篇再來補強各種常用的 loader css-loader:解悉 css 檔 extract-loader:這個有點難翻,下面會介紹 file-loader:存成實體的檔案, 如圖片 html-loader:解悉 html 檔 sass-loader:解悉 scss 檔 url-loader:解悉圖片路徑 webpack.config.js module.exports = { resolveLoader: { // 所有用到的 loader, -loader 可以不用打 moduleExtensions: [ "-loader" ], }, resolve: { // 在 require 檔案, 如果不想寫完整的路徑 // 可以加入這些目錄, 讓 webpack 自動尋找對的檔案 // 請注意我們加入了 src/img 路徑,後面會再介紹到 modules: [ path.resolve( 'src/html' ), path.resolve( 'src/img' ), path.resolve( 'src/css' ), path.resolve( 'src/js' ), path.resolve( "node_modules"), ], // 在 require 時可以不用打副檔名 extensions: [ ".js", ".scss" ] }, } 再來就是 loader 的介紹 scss 在這要做多組合的應用 先將 .scss 透過 scss-loader 轉換, 並產生 sourceMap 檔 再過 css-loader 最後再過 style-loader { test: /\.scss$/, // 多個

webpack2 入門實戰 2 loader 篇

大家好我是奶綠茶 上一篇 介紹到基本的 webpack2 使用 這篇來介紹 webpack 的核心功能 loader 要告訴 webpack , 遇到什麼樣的檔案, 要用什麼樣的 loader 處理 我們就以 babel-loader 來做教學 1. 安裝 babel-loader babel-core:babel 的核心程式 babel-loader:webpack 用的 babel 轉換 loader babel-preset-es2015:babel 轉換成相下相容的語法 npm i -s -D babel-loader babel-core babel-preset-es2015 2. webpack.config.js 所有的 loader 規則都放在 module.rules 下 test:正則比對副檔名,只要是 .js 或 .jsx 都套用這個 loader loader:指定要套用的 loader options:要傳給 loader 的參數 注:loader寫法有二種,寫成一行, 用 ? 當參數傳 另一種就是寫 loader , 然後用 options 傳 個人比較愛後者 include:該 loader 只要找指定的資料夾,可加速 webpack 打包 exclude:同理,只是排除資料夾 var path = require( 'path' ); module.exports = { context: path.join( __dirname, '/src' ), entry: './js/app.js', output: { filename: 'bundle.js', path: path.resolve( __dirname, 'dist' ) }, module: { //https://webpack.js.org/configuration/module/ rules: [ { test: /\.(js|jsx)$/, // 寫法

webpack2 入門實戰 1

大家好,我是奶綠茶 前端戰場不再只是寫寫 js / css , 各種框架、前處理工具百花齊放 身為前端工程師,不只要把程式寫完,還要寫好 老師說:選對好工具,事情就完成一半 如果你還在一隻 JS 打完全部程式,一隻 css 寫所有的 style 每次存檔還在手動 reload 網頁, 圖片壓 K 壓到不要不要的 透過奶綠伯的系列教學,讓你了解 webpack2 帶來的優勢 學會 webpack 可能不會加薪,但至少可以準時下班(誤) 1. 安裝 nodejs 請參考 gulp 安裝編 2. 安裝 global webpack , 筆者使用的是 2.2.1 版本 npm i webpack@2.2.1 -g 3. 在專案的根目錄放一隻 webpack.config.js entry:你的主 js 進入點 output.filename:webpack 打包後的檔名 output.path:webpack 打包後的路徑 var path = require('path'); module.exports = { entry: './src/app.js', output: { filename: 'bundle.js', path: path.resolve(__dirname, 'dist') } }; 4. require , module.exports 現在前端都 module 化 可以每個獨立的功能都寫成單一的 js module 除了好管理,也方便讓團隊使用 寫一隻 module_exports_util.js 每隻經過 webpack 打包的 js , 都會是獨立的檔案 所以變數都是私有的, 外部成員都無法得到 在這個 module 裡,我們想開放二個函式 add , getName 所以在最後的 module.exports 指定 筆記加入 jsdoc , 為了方便在開發時,能夠有型別的提示 var name = "milkmidi"; /** * @param {number} num1 * @param {number} num2

前端攻城屍自動化教學 2 ( gulp 安裝篇)

大家好,我是奶綠茶 上一篇介紹了現成的前端工具 prepros 但總是有些功能無法滿足 這篇就來介紹純手工的前端自動化工具 gulp gulp 的官網一進去就會看到大大的 Automate and enhance your workflow http://gulpjs.com/ 1. 首先要安裝 npm (nodejs package manager) 安裝 nodejs 就會有 npm 的功能 https://nodejs.org/en/ 測試一下是否正常 進入終端機模式(Terminal) 輸入 node -v 是否有出現版本號 再輸入 npm -v 是否有出現版本號 2. 安裝 gulp 以下教學參考官方的原文 https://github.com/gulpjs/gulp/blob/master/docs/getting-started.md npm install --global gulp-cli --global 指的是全域應用,也可以縮寫 -g 3. 開啟你的專案資料夾,並啟動 Terminal, 輸入 npm init 之後一直接 entry , entry , entry ..... 就會產生一隻 package.json 裡面記錄了這個專案會用到的各種套件 4.安裝 gulp 到 devDependencies npm install --save-dev gulp --save-dev 可以縮寫成 -s -D 打開 package.json 可以看到 devDependencies 多了 gulp : xxx 版本號 測試一下是否運作正常 gulp 轉載請註明出處

Adobe Animate cc 廣告素材製作篇

大家好,我是奶綠茶 今天來介紹廣告素材的製作 使用的是 Adobe Animate CC 什麼,是新軟體!!!!! 大家不用怕,其實他的前身是 Adobe Flash 只是換個名字(去 Flash 化) 在使用的介面和功能都一模一模 如果本身就會使用 flash 的朋友一定不莫生 1. 開啟 Adobe Animate CC 選擇 HTML5 Canvas 格式 2.畫一個色塊,並轉成影片片段(MovieClip)元素 3. 拉影格拉至 25 ,選擇逼角移動補間動畫 4.這時可以看到影格間變成淺藍色 5. 幫元素取名為 box, 之後才可以用程式控制 6. 新增一個圖層,取名為 as (筆者的習慣) 加入程式碼,讓目前的時間軸停止動畫 this.stop(); 一定要加寫 this 程式碼才會對 7. 點擊 box 元素後,播放時間軸動畫, 按下發佈,或是 Ctrol + Entry , 就可以看到動畫了。 8. 有時在交素材時,媒體端不充許外載其他的程式 因為 Adobe Animate CC HTML5 Canvas 技術是使用一套叫 createjs 的 framework 他有外部引用他的程式碼 所以我們要修改一下 9. 把 createjs 的程式碼載回本機 10. 跟你的 html, js 放在同一個資料夾下 11. 用記事本開啟 .html , 修改引用的路徑,完工 祝大家學習愉快 轉載請註明出處 SourceCodeDownload