angular+webpack2的示例分析

這篇文章主要介紹了angular+webpack2的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

成都網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計、成都網(wǎng)站建設(shè)公司、微信開發(fā)、小程序制作、集團成都定制網(wǎng)站等服務(wù)項目。核心團隊均擁有互聯(lián)網(wǎng)行業(yè)多年經(jīng)驗,服務(wù)眾多知名企業(yè)客戶;涵蓋的客戶類型包括:社區(qū)文化墻等眾多領(lǐng)域,積累了大量豐富的經(jīng)驗,同時也獲得了客戶的一致贊賞!

webpack出了中文版以后,對于我們這些英語不是很好的來說真的是太棒了,話說angularjs啥時候也出個中文文檔就更好了,webpack官網(wǎng):https://doc.webpack-china.org/

右上角可以選擇語言。

開始之前先看一下目錄文件:

angular+webpack2的示例分析

第一步:

首先要使用webpack需要先安裝webpack,官網(wǎng)給出了好幾中安裝方式,就不多說了:

npm install --global webpack

因為我用的是webpack2 所以需要注意版本1x 到 2x 的配置差異,這里官網(wǎng)也給出了詳細差異:https://doc.webpack-china.org/guides/migrating/

第二步webapck配置webpack.config.js:

const webpack = require('webpack'); //to access built-in plugins
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');

const config = {
  entry: './app/app.js',
  output: {
  path: path.resolve(__dirname, 'dist'),
  filename: 'bundle-[chunkhash].js',
  publicPath: "/mobile/dist/"
 },
 module: {
  rules: [
  {
    test: /\.(js|jsx)$/, 
    use: 'babel-loader'
  },
 
  {
   test: /\.css$/,
   use: ['style-loader','css-loader']
  },

 {
  test: /\.(png|jpg|jpeg|gif|woff)$/, 
  use: 'url-loader?limit=4192&name=[name].[ext]' 
 },

 ]
},
 plugins:[
  new HtmlWebpackPlugin({        //自動生成Html
    template:'./app/view/index.html',
    filename:'../app/index.html',
    inject:'body'
  })
]
};

module.exports = config;

這里需要說的是entry: './app/app.js' 是入口文件,所有的 js代碼都通過入口文件加載,我這里就只用了 app.js ,但是也可以設(shè)置多個入口文件。

output: 設(shè)置輸出的路徑和文件,這里我是將所有的 js 壓縮到了bundle.js中,這里也是可以設(shè)置壓縮到多個文件的,文件后面我設(shè)置了 hash 值主要考慮瀏覽器緩存問題,module: 就是配置js css html 打包壓縮的規(guī)則,這里寫法和 webpack1x 有較大差異,還需注意。

plugins: 插件,webpack 有很多內(nèi)置插件,HtmlWebpackPlugin  是動態(tài)生成html的一個內(nèi)置插件,主要的作用是可以動態(tài)的把壓縮后帶有 hash 值的js動態(tài)插入到 html 中。

配置就暫時說到這里,然后再看看我們的入口文件,app.js,

var angular = require('angular');// 引入angular

var urlRouterProvider = require('angular-ui-router');

var uiLoad = require('angular-ui-load');

var $jq = require('jquery');

var animate = require('angular-animate');

var ngModule = angular.module('app',['ui.router','ui.load','ngAnimate']); // 創(chuàng)建app

require('./factory.js')(ngModule,$jq);// 公共方法封裝

require('./route.js')(ngModule);// 引入路由文件

require('./directives.js')(ngModule,$jq);// 組件

require('./controller.js')(ngModule);// 控制器

require('./css/style.css');// 引入樣式文件

這里主要把js依賴文件引入,然后把angular的路由和邏輯處理的js引入,方便前端模塊化編程,注視比較清晰就不多說了。單獨的js模塊直接按照原來的寫就ok了 區(qū)別就是在最外層寫一個module.exports = function(ngModule){}

感謝你能夠認真閱讀完這篇文章,希望小編分享的“angular+webpack2的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

分享標題:angular+webpack2的示例分析
當(dāng)前網(wǎng)址:http://muchs.cn/article42/gdsdhc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、做網(wǎng)站、域名注冊、軟件開發(fā)、App設(shè)計、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)