科百科
当前位置: 首页 范文大全

webpack的配置文件在哪(你配置Webpack4)

时间:2023-07-30 作者: 小编 阅读量: 1 栏目名: 范文大全

一千个观众就有一千个哈姆雷特。你在网络上可以找到上百万个有关如何配置 Webpack 的教程,所以,你可能已经看到了一千种不同的配置方法。Webpack 本身在快速演化,除此之外,还有很多加载器和插件紧随其后。这就是为什么这些配置文件会各有不同:组合使用同一组工具的不同版本可能会奏效,也可能不能如愿。

很多人一直在抱怨 Webpack 使用起来很麻烦。从某些方面来看,确实如此。但是,我不得不说,从我使用 gulp 和 grunt 的经验来看,它们也存在同样的问题。也就是说,当你使用 npm 模块时,就不可避免地会出现某些模块版本不兼容的问题。

到目前为止,Webpack 4 是最流行的模块捆绑器之一。它提供了很多新特性,例如零配置、合理的默认值、性能改进、开箱即用的优化工具,等等。

零配置:Webpack 4 不需要配置文件,这是 Webpack 4 的一个全新的变更。

性能提升:Webpack 4 是迄今为止最快的 Webpack 版本。

合理的默认值:Webpack 4 的主要概念包括入口、输出、加载器和插件。

核心概念

入口

它应该是一个.js 文件,人们会在这个文件中包含.scss 或.css 文件,这样做可能会导致很多意外的错误。有时候你可能会看到一个入口包含了几个.js 文件。虽然有时候你可以这么做,但它通常会增加更多的复杂性。

输出

这是 build/ 或 dist/ 或任意名称的文件夹,用于存放最终的.js 文件。

加载器

它们主要用来编译或转换你的代码,例如 postcss-loader。

插件

插件在将代码输出到文件方面起着至关重要的作用。

快速入门

创建一个新目录,并进入这个目录:

复制代码

mkdir webpack-4-tutorialcd webpack-4-tutorial

初始化 package.json:

复制代码

npm init

或者:

复制代码

yarn init

我们需要下载 Webpack 4 和 webpack-cli:

复制代码

npm install webpack webpack-cli --save-dev

或者:

复制代码

yarn add webpack webpack-cli --dev

现在,打开 package.json 文件,并添加一个构建脚本:

复制代码

"scripts": { "dev": "webpack"}

运行它,你可能会看到一个警告:

复制代码

WARNING in configuration The ‘mode’ option has not been set, webpack will fallback to ‘production’ for this value. Set ‘mode’ option to ‘development’ or ‘production’ to enable defaults for each environment. You can also set it to ‘none’ to disable any default behavior. Learn more: https://webpack.js.org/concepts/mode/

Webpack 4 的模式

你需要编辑脚本,在其中包含模式标志:

复制代码

"scripts": { "dev": "webpack --mode development"} ERROR in Entry module not found: Error: Can’t resolve ‘./src’ in ‘~/webpack-4-quickstart’

Webpack 会查找一个带有 index.js 文件的文件夹.src/。这是 Webpack 4 的默认行为,因为它是零配置的。

让我们创建一个带有 index.js 文件的目录./src,并这个文件中加一些代码。

复制代码

console.log("hello, world");

现在运行脚本:

复制代码

npm run dev

或者:

复制代码

yarn dev

如果一切正常,你将得到一个./dist/main.js 文件。好了,代码已经编译好了。但刚刚都发生了什么?

默认情况下,Webpack 是零配置的,所以你不需要配置 webpack.config.js。因此,它必须假设一些默认行为,它总是先查找./src 文件夹,然后在其中查找 index.js,并将输出写入./dist/main.js 文件。

如果你遇到这个错误:

复制代码

ERROR in ./node_modules/fsevents/node_modules/node-pre-gyp/lib/publish.js Module not found: Error: Can't resolve 'aws-sdk' in '/Users/mobr/Documents/workshop/test-webpack-4-setup/node_modules/fsevents/node_modules/node-pre-gyp/lib'

这里描述了更多细节。要解决这个问题,你需要创建 webpack.config.js 文件,然后按照本文后面的教程配置这个文件。但是首先你需要下载webpack-node-externals。

复制代码

npm install webpack-node-externals --save-dev

或者:

复制代码

yarn add webpack-node-externals --dev

然后导入这个模块:

复制代码

const nodeExternals = require('webpack-node-externals');...module.exports = { ... target: 'node', externals: [nodeExternals()], ...};

拥有 2 个配置文件是 Webpack 的常见做法,尤其是在大型项目中,通常一个用于开发,一个用于生产环境。Webpack 4 提供了两种模式:生产(production)和开发(development)。这样可以避免使用两个文件(对于中型项目)。

复制代码

"scripts": { "dev": "webpack --mode development", "build": "webpack --mode production"}

如果你细心一点就会发现,main.js 文件并没有被最小化。

我将在示例中使用 build 脚本,因为它提供了很多开箱即用的优化措施,但其实你可以随意使用它们中的任何一个。build 和 dev 脚本之间最主要的区别在于它们如何输出文件。build 用于创建用于生产环境的代码,而 dev 用于开发环境,所以它支持热模块替换、开发服务器以及其他很多有助于开发工作的东西。

你可以覆盖 npm 脚本中的默认值,只需使用标志:

复制代码

"scripts": {"dev": "webpack --mode development ./src/index.js --output ./dist/main.js","build": "webpack --mode production ./src/index.js --output ./dist/main.js" }

这将覆盖默认选项,而无需配置任何东西。

作为练习,也可以试一试这些标志:

–watch 标志用于启用监听模式。它将监控你的文件更改,并在每次文件发生更新时重新编译文件。

复制代码

"scripts": {"dev": "webpack --mode development ./src/index.js --output ./dist/main.js --watch","build": "webpack --mode production ./src/index.js --output ./dist/main.js --watch" }

–entry 标志与–output 标志差不多,但会重写入口路径。

转换.js 代码

现代 JS 代码主要是用 ES6 编写的,但并非所有浏览器都支持 ES6。因此,你需要对代码进行转换——将 ES6 代码转换为 ES5。你可以使用 babel——现在最流行的工具。当然,我们不仅可以转换 ES6 代码,也可以转换其他 JS 实现,如 TypeScript、React,等等。

复制代码

npm install babel-core babel-loader babel-preset-env --save-dev

或者:

复制代码

yarn add babel-core babel-loader babel-preset-env --dev

为 babel 创建配置文件.babelrc,并在文件中粘贴以下内容。

复制代码

{"presets": [ "env" ]}

我们有两个配置 babel-loader 的方式:

  • 使用配置文件 Webpack.config.js
  • 在 npm 脚本中使用–module-bind

从技术上说,你可以通过 Webpack 引入的新标志做很多事情,但为简单起见,我选择了 webpack.config.js。

配置文件

虽然 Webpack 宣称自己是零配置的,但这种零配置主要还是适用于默认设置,比如入口和输出。

我们将创建包含以下内容的 webpack.config.js:

复制代码

// webpack v4const path = require('path');// update from 23.12.2018const nodeExternals = require('webpack-node-externals');module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: 'main.js' }, target: 'node', // update from 23.12.2018 externals: [nodeExternals()], // update from 23.12.2018 module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } } ] }};

从 npm 脚本中移除标志。

复制代码

"scripts": { "build": "webpack --mode production", "dev": "webpack --mode development"},

现在,当我们运行 npm run build 或 yarn build 时,它应该会在./dist/main.js 中生成一个最小化的.js 文件。如果没有,请尝试重新安装 babel-loader。

如果遇到模块“@babel/core”冲突,说明某些预加载的 babel 依赖项不兼容。我遇到的错误是:

复制代码

Module build failed: Error: Cannot find module '@babel/core' babel-loader@8 requires Babel 7.x (the package '@babel/core'). If you'd like to use Babel 6.x ('babel-core'), you should install 'babel-loader@7'.

我是这样解决的:

复制代码

yarn add @babel/core --dev

html 和 CSS 导入

我们先在./dist 文件夹中创建 index.html 文件。

复制代码

<html> <head> <link rel="stylesheet" href="style.css"> </head> <body> <div>Hello, world!</div> <script src="http://img.studyofnet.commain.js"></script> </body></html>

我们在这里导入了 style.css,现在让我们来配置它!正如我们所说,我们只有一个 Webpack 入口点。那么应该将 css 文件放在哪里?在./src 文件夹中创建 style.css 文件。

复制代码

div { color: red;}

不要忘了将它包含在.js 文件中:

复制代码

import "./style.css";console.log("hello, world");

在 Webpack 中为 css 文件创建一个新规则:

复制代码

// webpack v4const path = require('path');// update from 23.12.2018const nodeExternals = require('webpack-node-externals');const ExtractTextPlugin = require('extract-text-webpack-plugin');module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: 'main.js' }, target: 'node', // update from 23.12.2018 externals: [nodeExternals()], // update from 23.12.2018module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.css$/, use: ExtractTextPlugin.extract( { fallback: 'style-loader', use: ['css-loader'] }) } ] }};

在终端中运行:

复制代码

npm install extract-text-webpack-plugin --save-devnpm install style-loader css-loader --save-dev

或者:

复制代码

yarn add extract-text-webpack-plugin style-loader css-loader --dev

我们需要使用 extract-text-webpack-plugin 来编译我们的.css。但是在 Webpack 4 中使用这个插件有点问题,可能会遇到这个错误。

要修复这个问题,需要运行:

复制代码

npm install -D extract-text-webpack-plugin@next

或者:

复制代码

yarn add --dev extract-text-webpack-plugin@next

然后你的 css 代码应该被编译为./dist/style.css。

到了这个时候,我的 package.json 的 dev 依赖项看起来像这样:

复制代码

"devDependencies": { "babel-core": "^6.26.0", "babel-loader": "^7.1.4", "babel-preset-env": "^1.6.1", "css-loader": "^0.28.11", "extract-text-webpack-plugin": "^4.0.0-beta.0", "style-loader": "^0.20.3", "webpack": "^4.4.1", "webpack-cli": "^2.0.12" }

请注意,另一种组合可能无法正常运行,因为即使是将 webpack-cli 2.0.12 更新为 2.0.13 也可能会带来问题。

现在它应该将 style.css 输出到./dist 文件夹中了。

Mini-CSS 插件

Mini-CSS 插件旨在取代 extract-text 插件,并为你提供更好的兼容性。我重新修改了我的 Webpack 文件,使用mini-css-extract-plugin来编译 style.css。

复制代码

npm install mini-css-extract-plugin --save-dev

或者:

复制代码

yarn add mini-css-extract-plugin --dev

以及:

复制代码

// webpack v4const path = require('path');// update from 23.12.2018const nodeExternals = require('webpack-node-externals');// const ExtractTextPlugin = require('extract-text-webpack-plugin');const MiniCssExtractPlugin = require("mini-css-extract-plugin");module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: '[name].[chunkhash].js' }, target: 'node', // update from 23.12.2018 externals: [nodeExternals()], // update from 23.12.2018 module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.css$/, use: [ 'style-loader', MiniCssExtractPlugin.loader, 'css-loader'] } ] }, plugins: [ new MiniCssExtractPlugin({ filename: 'style.css', }) ]};

我们需要使用 MiniCssExtractPlugin,因为默认情况下 Webpack 只能识别.js 格式。MiniCssExtractPlugin 将.css 内容提取到./dist 目录下不同的.css 文件中。

配置对 SCSS 的支持

使用 SASS 和 POSTCSS 开发网站已经非常普遍,因此,我们将首先包括对 SASS 的支持。让我们重命名./src/style.css 文件,并创建另一个文件夹来存放.scss 文件。现在我们需要添加对.scss 格式的支持。

复制代码

npm install node-sass sass-loader --save-dev

或者:

复制代码

yarn add node-sass sass-loader --dev

使用./scss/main.scss 替换 style.css,并修改 test 配置,以便支持.scss:

复制代码

// webpack v4const path = require('path');// update 23.12.2018const nodeExternals = require('webpack-node-externals');const MiniCssExtractPlugin = require("mini-css-extract-plugin");module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: 'main.js' }, target: "node", // update 23.12.2018 externals: [nodeExternals()], // update 23.12.2018 module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.scss$/, use: [ "style-loader", MiniCssExtractPlugin.loader, "css-loader", "sass-loader" ] } ] } ...

HTML 模板

现在让我们来创建.html 文件模板。将以下内容添加到./src 目录的 index.html 文件中。

复制代码

<html> <head> <link rel="stylesheet" href="style.css"> </head> <body> <div>Hello, world!</div> <script src="http://img.studyofnet.commain.js"></script> </body></html>

我们需要借助 html 插件才能将这个文件作为模板使用。

复制代码

npm install html-webpack-plugin --save-dev

或者:

复制代码

yarn add html-webpack-plugin --dev

将其添加到你的 Webpack 文件中:

复制代码

// webpack v4const path = require('path');// update 23.12.2018const nodeExternals = require('webpack-node-externals');const MiniCssExtractPlugin = require("mini-css-extract-plugin");const HtmlWebpackPlugin = require('html-webpack-plugin');module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: 'main.js' }, target: "node", // update 23.12.2018 externals: [nodeExternals()], // update 23.12.2018 module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.scss$/, use: [ "style-loader", MiniCssExtractPlugin.loader, "css-loader", "sass-loader" ] } ] }, plugins: [new MiniCssExtractPlugin({ filename: "style.css" }), new HtmlWebpackPlugin({ inject: false, hash: true, template: './src/index.html', filename: 'index.html' }) ]};

现在./src/index.html 文件就变成了一个模板。现在删除./dist 文件夹其其中的所有文件,然后重新构建,看看是不是一切正常。

复制代码

rm -rf ./distnpm run dev

或者:

复制代码

rm -rf ./distyarn dev

你会看到./dist 文件夹重新生成,其中包含了三个文件:index.html、style.css 和 main.js.

缓存和哈希

开发中最常见的问题之一是如何实现缓存。因为这篇文章主要是关于如何配置 Webpack,所以不会专注于介绍缓存的实现细节。我只想说,解决缓存问题最常用的方法之一是在文件中(例如 style.css 和 script.js)添加一个哈希值。你可以参考这篇文章。

使用哈希以后,浏览器只会请求发生变更的文件。

Webpack 4 基于 chunkhash 实现了的内置的哈希功能。修改 Webpack 文件:

复制代码

// webpack v4const path = require('path');// update 23.12.2018const nodeExternals = require("webpack-node-externals");const MiniCssExtractPlugin = require("mini-css-extract-plugin");const HtmlWebpackPlugin = require('html-webpack-plugin');module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: '[name].[chunkhash].js' }, target: "node", externals: [nodeExternals()], module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.scss$/, use: [ "style-loader", MiniCssExtractPlugin.loader, "css-loader", "sass-loader" ] } ] }, plugins: [new MiniCssExtractPlugin({ filename: "style.[contenthash].css" }), new HtmlWebpackPlugin({ inject: false, hash: true, template: './src/index.html', filename: 'index.html' }) ]};

在./src/index.html 文件中添加:

复制代码

<html> <head> <link rel="stylesheet" href="<%=htmlWebpackPlugin.files.chunks.main.css %>"> </head> <body> <div>Hello, world!</div> <script src="http://img.studyofnet.com<%= htmlWebpackPlugin.files.chunks.main.entry %>"></script> </body></html>

我们将使用 htmlWebpackPlugin.files.chunks.main 模式生成哈希。看一下./dist 目录下的 index.html 文件:

如果我们在不修改.js 和.css 文件的情况下运行 npm run dev,不管运行多少次,两个文件中的哈希值都应该是一样的。

CSS 的哈希问题以及如何解决

如果你在 Webpack 4 中使用了 ExtractTextPlugin,可能会存在这个问题。如果你使用的是 MiniCssExtractPlugin,这个问题应该就不会发生。

我们的解决方案还不够完美。如果我们修改了.scss 文件中的某些代码会怎样?你会发现,现在不生成新的哈希了。如果我们在.js 文件中增加一行 console.log,比如:

复制代码

import "./style.css";console.log("hello, world");console.log("Hello, world 2");

再次运行 dev 脚本,你将看到两个文件中的哈希值已更新。

这个问题是已知的,Stack Overflow 上已经讨论过这个问题。

那么应该怎么解决这个问题?

在尝试了很多声称可以解决这个问题的插件后,我终于找到了两个可行的解决方案。

解决方案 1

可能还存在一些冲突,可以试试 mini-css-extract 插件。

解决方案 2

在 CSS Extract 插件中使用 [hash] 替换 [chukhash],但这似乎会与 Webpack 4.3 提供的 [contenthash] 变量产生冲突,所以可以结合使用这个插件:webpack-md5-hash。

现在再测试就会发现两个文件的哈希都会更新。

JS 的哈希问题以及如何解决?

如果你使用了 MiniCssExtractPlugin,可能会遇到另一个问题:每次修改 SCSS 中的某些内容时,.js 文件和.css 输出文件的哈希都会被更新。

解决方案:

使用 webpack-md5-hash 插件。如果你修改了 main.scss 文件并运行 dev 脚本,应该只有新的 style.css 文件里会包含新的哈希,而不是两个文件都会这样。

复制代码

// webpack v4const path = require('path');// update 23.12.2018const nodeExternals = require("webpack-node-externals");const MiniCssExtractPlugin = require("mini-css-extract-plugin");const HtmlWebpackPlugin = require("html-webpack-plugin");const WebpackMd5Hash = require("webpack-md5-hash");module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: '[name].[chunkhash].js' }, target: "node", // update 23.12.2018 externals: [nodeExternals()], // update 23.12.2018 module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.scss$/, use: ExtractTextPlugin.extract( { fallback: 'style-loader', use: ['css-loader', 'sass-loader'] }) } ] }, plugins: [new MiniCssExtractPlugin({ filename: "style.[contenthash].css" }), new HtmlWebpackPlugin({ inject: false, hash: true, template: "./src/index.html", filename: "index.html" }), new WebpackMd5Hash() ]};

集成 PostCSS

为了让输出的.css 更进一步,我们可以加入PostCSS。

PostCSS 提供了 autoprefixer、cssnano 和其他好用的东西。我每天都在用它。我们需要安装 postcss-loader,还有 autoprefixer,因为稍后会用到它。

复制代码

npm install postcss-loader --save-devnpm i -D autoprefixer

或者:

复制代码

yarn add postcss-loader autoprefixer --dev

创建 postcss.config.js,并粘贴以下内容:

复制代码

module.exports = { plugins: [ require('autoprefixer') ]}

我们的 Webpack.config.js 现在应该是这样的:

复制代码

// webpack v4const path = require('path');// update 23.12.2018const nodeExternals = require("webpack-node-externals");const MiniCssExtractPlugin = require("mini-css-extract-plugin");const HtmlWebpackPlugin = require("html-webpack-plugin");const WebpackMd5Hash = require("webpack-md5-hash");module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: '[name].[chunkhash].js' }, target: "node", externals: [nodeExternals()], module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.scss$/, use: [ 'style-loader', MiniCssExtractPlugin.loader, 'css-loader', 'postcss-loader', 'sass-loader'] } ] }, plugins: [ new MiniCssExtractPlugin({ filename: 'style.[contenthash].css', }), new HtmlWebpackPlugin({ inject: false, hash: true, template: './src/index.html', filename: 'index.html' }), new WebpackMd5Hash() ]};

请注意插件的顺序:

复制代码

use: ['style-loader', MiniCssExtractPlugin.loader, 'css-loader', 'postcss-loader', 'sass-loader']

加载器按照从尾到头的顺序使用插件。

你可以向.scss 文件中添加更多内容并检查输出,以此来测试autoprefixer。

你也可以在.browserslistrc 文件中指定要支持的浏览器来调整输出的内容。

你可以在这个网站上了解更多 PostCSS 可用的插件,例如:

  • utilities
  • cssnano
  • style-lint

我使用 cssnano 来最小化输出文件,并用css-mqpacker来处理媒体查询。

也有人说可以试试 cleancss。

保持整洁

在重新生成文件之前,我们可以尝试使用 clean-Webpack-plugin 来清理./dist 文件夹。

复制代码

// webpack v4const path = require('path');// update 23.12.2018const nodeExternals = require("webpack-node-externals");const MiniCssExtractPlugin = require("mini-css-extract-plugin");const HtmlWebpackPlugin = require("html-webpack-plugin");const WebpackMd5Hash = require("webpack-md5-hash");const CleanWebpackPlugin = require('clean-webpack-plugin');module.exports = { entry: { main: './src/index.js' }, output: { path: path.resolve(__dirname, 'dist'), filename: '[name].[chunkhash].js' }, target: "node", externals: [nodeExternals()], module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: "babel-loader" } }, { test: /\.scss$/, use: [ 'style-loader',MiniCssExtractPlugin.loader,'css-loader','postcss-loader','sass-loader'] } ] }, plugins: [new CleanWebpackPlugin('dist', {} ), new MiniCssExtractPlugin({ filename: 'style.[contenthash].css', }), new HtmlWebpackPlugin({ inject: false, hash: true, template: './src/index.html', filename: 'index.html' }), new WebpackMd5Hash() ]};

带有最新版本插件的 package.json 看起来是这样的:

复制代码

{ “name”: “webpack-test”, “version”: “1.0.0”, “description”: “”, “main”: “index.js”, “scripts”: { “build”: “webpack --mode production”, “dev”: “webpack --mode development” }, “author”: “”, “license”: “ISC”, "devDependencies": { "@babel/core": "^7.2.2", "autoprefixer": "^9.4.3", "babel-core": "^6.26.3", "babel-loader": "^8.0.4", "babel-preset-env": "^1.7.0", "css-loader": "^2.0.2", "html-webpack-plugin": "^3.2.0", "mini-css-extract-plugin": "^0.5.0", "node-sass": "^4.11.0", "postcss-loader": "^3.0.0", "sass-loader": "^7.1.0", "style-loader": "^0.23.1", "webpack": "4.28", "webpack-cli": "^3.1.2"}, "dependencies": { "clean-webpack-plugin": "^1.0.0", "webpack-md5-hash": "^0.0.6", "webpack-node-externals": "^1.7.2" }}

英文原文:

https://hackernoon.com/a-tale-of-webpack-4-and-how-to-finally-configure-it-in-the-right-way-4e94c8e7e5c1 (头条插不了外链,小Q尽力了,有哥们想看原文的烦请手动复制下哈)

    推荐阅读
  • 一旦没有了分享欲就会沉默(越熟悉对彼此越来越没兴趣)

    如果在分享中经常得不到自己预期的回应,对方又经常得不到自己的点,他就会逐渐冷淡,不再表达自己。分享好像是在告诉对方每天看到的东西,遇到的问题,每天的作息。在分享中,我们期待得到对方的回应,渴望倾听对方。但是,通过对方来满足自己的需求并不容易。其实并不是分享的欲望消失了,我们承担了分享欲望的后果。尽量降低预期反应,或许你能获得分享欲望本身的快乐。

  • 广东惠州罗浮山温泉度假村(在惠州滑雪没错)

    昨日,位于罗浮山脚下长宁镇古坭塘村的“长津冰雪大世界”正式对外营业,迎来了大批游客。冰雪大世界内温度则达到零下十度,身穿棉服,脚踏雪地靴的游客感慨真是冰火两重天。长津冰雪大世界广东长津冰雪大世界占地面积约200多亩,其中建筑面积15000平方米,一期景区室内展馆面积7000多平方米、室内空间体积40000立方米,项目总投资1.8亿元,设计年接待游客量能力可达到120万人次,年产值预计1.2亿元。

  • 我的世界常用光影(Wisdom光影包会是什么样)

    我的世界常用光影《我的世界》中国版的组件中心是个神奇的地方,很多小伙伴每次想给游戏增添一些有趣的新玩法时就会到那里去逛逛。某日小编就在闲逛中发现了一款叫作Wisdom光影的组件包,看介绍似乎会增强游戏的画质呢!还是忍不住要强调一下水面的效果,仿佛让世界一下子活了起来。这样的《我的世界》你还喜欢吗?在更好的画质和环境下盖房子和挖矿可能都会更舒心吧~下次如果你的朋友问“《我的世界》画面怎么样?”

  • 苏泊尔电压力锅做米饭(给你难忘的美味米饭)

    苏泊尔电压力锅做米饭在经济与科技飞速发展的时代,人们的生活品质不断地提高,同时对于美好生活的需求也日益增多。产品测评—SUPOR/苏泊尔SY-50FC8422Q电压力锅双胆高压饭煲Part1SUPOR/苏泊尔电压力锅双胆高压饭煲功能特点首先是这电饭煲完全不粘锅易清洗。自从有了/苏泊尔电压力锅双胆高压饭煲后,无论是煲汤还是煮饭,都再也没有遇到残破的米饭颗粒粘在内胆上的情况了。

  • 应用程序出现异常(应用软件发生异常)

    点击左下角开始菜单→运行→msconfig→启动→把可疑的加载项.dll文件的勾去掉→重启电脑,一般就可以解决了还有一种方法就是修改注册表来进行解决。

  • 橄榄树歌曲原唱(橄榄树歌曲原唱的简介)

    橄榄树歌曲原唱《橄榄树》歌曲原唱是杨祖珺。然而其歌声中对台湾土地、与人民澎湃的热情,却触犯了当时政治噤声的禁忌,随之而来的政治压迫使杨祖珺一度放弃她的歌唱生涯,愤而转投入「党外」运动,但也因此更强化她对台湾社会文化以及政治运动的参与动机,以个人生命印证台湾蜕变转型的轨迹。

  • 如果欠信用卡还不上怎么办才好(如果欠信用卡还不起会怎样处理)

    这种犯罪事实已客观存在,非主观臆断。如果其行为仅构成犯罪,而依法不应追究其刑事责任的,也不应立案。

  • 达芙妮的故事(达芙妮的浮沉与自救)

    当时的达芙妮正面临连续第三年的亏损,市值大幅度缩水,累计关店近3000家。2018年3月28日达芙妮公布了最新财报。亏损仍在持续,2017年亏损7.342亿港元,唯较2016年8.191亿港元略有收窄。加上2015年3.789亿港元亏损,在这三年内,集团累计亏损19.3亿港元。达芙妮采用街边店与加盟的形式进行扩张。渠道优势转化为市场占有率,达芙妮一度拥有近7000家门店。随后,这个品牌签下偶像团体S.H.E担任“达芙妮D18”系列代言人。

  • 常用化妆品的简单使用方法(化妆的最后一步是什么)

    下面更多详细答案一起来看看吧!常用化妆品的简单使用方法洁面:护肤保养之前,清洁永远是第一步。

  • 散养猫被抓(160余只猫狗幼体被活体运输)

    截至5月4日下午四点,已有超过3.5万的转发量。爱之家的工作人员称:“经过一夜的连续奋战,动检部门对所有猫狗依法暂扣,现将全部猫狗转移到石板滩宠物城临时安置、留检。”爱之家与“狗贩子”达成协议报警后相关部门已介入爱之家的工作人员称,4号下午一点半左右,志愿者与狗贩子在位于回龙街的鑫悦宠物店发生了冲突。爱之家负责人与“狗贩子”达成协议据悉,爱之家负责人在该事发生后向荷花池派出所报案。