Как получить чистые URL в localhost при использовании Webpack? - PullRequest
0 голосов
/ 08 июня 2019

Мне было интересно, возможно ли иметь чистые URL в localhost при использовании сервера разработки Webpack? Под чистыми URL-адресами я имею в виду, например, обслуживание страницы about.html при вводе http://localhost:8080/about вместо необходимости вводить http://localhost:8080/about.html

Возможно ли это? Вот содержимое моего файла Webpack.

const glob = require('glob');
const path = require("path");
const common = require("./webpack.common");
const merge = require("webpack-merge");
const HtmlWebpackPlugin = require("html-webpack-plugin");

const generateHTML = () => glob.sync('./src/*.html').map(
    dir => new HtmlWebpackPlugin({
        filename: path.basename(dir),
        template: dir,
    }),
);

module.exports = merge(common, {
  mode: "development",
  output: {
    filename: "[name].bundle.js",
    path: path.resolve(__dirname, "dist")
  },
  plugins: [
    ...generateHTML()
  ],
  module: {
    rules: [
      {
        test: /\.scss$/,
        use: [
          "style-loader",
          "css-loader",
          "sass-loader"
        ]
      }
    ]
  }
});

1 Ответ

0 голосов
/ 10 июня 2019

Попробуйте сохранить каждый html-файл как index.html внутри каталога.Например: about/index.html:

const generateHTML = () => glob
  .sync('./src/*.html')
  .map(dir => new HtmlWebpackPlugin({
    filename: path.join(path.basename(dir, '.html'), 'index.html'),
    template: dir,
  })
)

Таким образом, вы сможете перейти на localhost: 8080 / около , и он действительно загрузит localhost: 8080 / about/index.html.

Надеюсь, это сработает.

...