<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                假如你不是一個喜歡掉過介紹的人,你可以獲得Webpack是什么的一些線索。簡單的說,它是一個模塊打包器。它讓一串資源文件進去,然后輸入資源文件讓你在客服端使用。 這聽起來簡單,但是在實際中,這將是一個復雜和麻煩的過程。你肯定不想自己處理所有的細節。這就是Webpack所要做的。下一步,你將開始一個Webpack配置,并開始讓你的第一個項目進入開發模式。 #配置一個項目 Webpack是一個依賴Node.js的工具。確保你安裝了Node.js并且在你的終端里`npm`是可用的。為你的項目配置一個目錄,進入這個目錄,輸入`npm init`并填充一些細節。你可以僅僅對每個設置敲出*enter*,它就可以工作了。下面是具體的命令: ``` mkdir kanban_app cd kanban_app npm init # hit return a few times till you have gone through the questions ``` 運行完上面以后,你應該在你項目的跟目錄擁有了`package.json`。你也可以在需要時進行手動更改。我們會通過`npm`工具對它進行更改,當然你也可以用你喜歡的方式進行。官方文檔會解釋[package.json options](https://docs.npmjs.com/files/package.json)里的更多細節。在這本書里我會隨后介紹一些編寫庫相關的技巧。 如果你采用版本控制,你也應該那么做。這是一個很好的時間來設置你的倉庫了。你可以創建提交作為你項目的進展。 ##.gitignore ``` node_modules *.log .DS_Store ``` 至少你應該把`node_modules`包含進來,不希望它出現在源碼控制力。引入這個目錄進來會導致的問題是,這里面的一些模塊是根據平臺進行編譯的,這會使合作變的很麻煩。理想情況下,`git status`應該看起來很干凈。你可以按照自己的需求擴展`.gitignore`。 #安裝Webpack 下面,你應該安裝Webpack。我們進行一個本地安裝并將它保存到項目依賴項里。這將允許我們能在一個項目中維持Webpack的版本。 ``` npm i webpack node-libs-browser --save-dev ``` > node-libs-browser is installed as it is a peer dependency of Webpack. Starting from npm 3 it won't get installed automatically. It's a good idea to have it installed in order to be future-proof. 這是一個允許Webpack第一次的好時機。敲入`node_modules/.bin/webpack`。你應該可以看見版本日志,一個指向命令行接口向導的鏈接和一個長長的選項列表。我們不會使用到大多數功能,但是我們很高興知道這個工具包含了如此多的功能,僅此而已。 Webpack使用全局安裝也是可以工作的(在安裝時使用`-g`或者`--global`標識)。像這樣作為一個項目的依賴是首選。這樣的安排會幫助你保持簡單的生活,會在你允許它是直接控制他的版本。 我們會使用`--save`和`--save-dev`去分離應用和開發時期的依賴。這樣分離會讓項目的依賴更加的容易理解。當我們生成產品包的時候回派上用場。 > There are handy shortcuts for --save and --save-dev. -S maps to --save and -D to --save-dev. So if you want to optimize for characters written, consider using these instead. #目錄結構 當一個僅僅有`package.json`的項目出生,我們贏設置更多實在的東西。讓我們做一個小的web站點并加裝一些JavaScript進來,然后使用Webpack來構建它們。設置的結構如下: /app -- index.js -- component.js /build (automatically generated, no need to create this) -- bundle.js -- index.html package.json webpack.config.js 在這個案例中,我們將基于我們的`/app`使用Webpack生成`bundle.js`。為了讓這個成為可能,讓我們一些資產和`webpack.config.js`。 #設置資產 如果你永不厭煩`Hello world`。我們不妨模仿一個變體。設置一個像下面的組件: ##app/component.js ``` modules.exports = function() { var element = document.createElement('h1'); element.innerHTML = 'Hello world'; return element; } ``` 下一步,我們需要一個入口,為我的應用。它將簡單的包含我們的組件并通過DOM渲染它。 ##app/index.js ``` var component = require('./component'); var app = document.createElement('div'); document.body.appendChild(app); app.appendChild(component()); ``` #配置Webpack 我們需要告訴Webpack如何處理我們的剛才設置的資產。為了這個目的,我們將編寫`webpack.config.js`。Webpack和開發服務會按照約定發現這些文件。 為了讓事情變得簡單。我們需要為我們的應用生成一個入口點通過使用`html-webpack-plugin`。它將為可能的資產創建鏈接并使我們的生活變得簡單。敲入 ``` npm i html-webpack-plugin --save-dev ``` 將它安裝到項目里。 為了繪制我們的應用到*build/bundle.js*里和生成*build/index.html*我們需要像這樣的配置: ##webpack.config.js ``` var path = require('path'); var HtmlwebpackPlugin = require('html-webpack-plugin'); var ROOT_PATH = path.resolve(__dirname); module.exports = { entry: path.resolve(ROOT_PATH, 'app'), output: { path: path.resolve(ROOT_PATH, 'build'), filename: 'bundle.js' }, plugins: [ new HtmlwebpackPlugin({ title: 'Kanban app' }) ] }; ``` 鑒于Webpack是適用絕對路徑的,我們會利用這一特性。我喜歡適用`path.resolve`,但是`path.join`也是一個好的選擇。`path.resolve`等于通過*cd*命令導航到文件系統。`path.join`僅僅給你的是一個字符串連接。可以查看[Node.js path API](https://nodejs.org/api/path.html)活動更多精確的細節。 假如你已經運行了`node_modules/.bin/webpack`,你應該可以看到一個Webpack的構建過程。你可以讓*/build*里的文件運行起來通過一個虛擬的web服務,比如(`npm i serve -g`)。在瀏覽器里檢查結果。 盡管這很棒,但是對于開發來說并不夠用。你可以給開發環境設置更好用工具。 > Note that you can pass a custom template to html-webpack-plugin. In our case, the default template it uses is fine for our purposes for now. #配置Webpack-dev-server 現在我們已經把基本的構建塊弄在一起了,我們可以配置開發服務了。`webpack-dev-server`是一個開發服務它能在你開發應用時在瀏覽器里自動刷新頁面內容。 這個功能大致和[LiveReload](http://livereload.com/)或[Browsersync](http://www.browsersync.io/)相當。Webpack比這些工具最多的優勢在于模塊熱替換(HMR)。我們將在講解React時進行講解。 敲入命令 ``` npm i webpack-dev-server --save-dev ``` 在項目的根目錄進行服務的安裝。我們將通過npm啟動我們的開發服務器。它允許我們在`package.json`里設置`scripts`。下面的設置就足夠了: ##package.json ``` ... "scripts": { "start": "webpack-dev-server" }, ... ``` 我們還需要做一些配置工作。 ##webpack.config.js ``` ... var webpack = require('webpack'); var ROOT_PATH = path.resolve(__dirname); module.exports = { ... devServer: { historyApiFallback: true, hot: true, inline: true, progress: true }, plugins: [ new webpack.HotModuleReplacementPlugin(), ... ] }; ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看