首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webpacker混淆

Webpacker混淆
EN

Stack Overflow用户
提问于 2018-05-03 16:27:40
回答 1查看 780关注 0票数 3

几个月前,我在我的Rails应用程序中实现了Webpack,并让它编译和组织我的JS、CSS、Image、SVG和字体,并在需要时重新命名它们。

现在Webpacker已经可用,并且更多地集成到Rails中,我基本上有两个问题:

所有编译后的文件都放在哪里?我现在的Webpack设置将它们全部输出到/public,我可以在那里看到它们。Webpacker把它们放哪儿了?

我把Webpacker的任何自定义配置放在哪里?例如:处理Sass,图像,svg和字体等?

谢谢

编辑:

代码语言:javascript
复制
const path = require('path');
const webpack = require('webpack');
const ExtractTextPlugin = require('extract-text-webpack-plugin');

module.exports = {
  entry: {
    'application': [
      './app/assets/scripts/application.js',
      './app/assets/styles/application.scss'
    ]
  },
  output: {
    path: path.join(__dirname, 'public', 'assets', 'application'),
    filename: 'js/[name].js',
    publicPath: '/assets/application/'
  },
  watch: false,
  devtool: 'cheap-module-eval-source-map',
  module: {
    rules: [
      {
        test: /\.s[ac]ss$/,
        use: ExtractTextPlugin.extract({
          use: ['css-loader?url=true', { loader:"resolve-url-loader", options: { debug: true} }, 'sass-loader?sourceMap']
        })
      },
      {
        test: /\.svg$/,
        use: 'file-loader?name=svg/[name].[ext]'
      },
      {
        test: /\.(gif|png|jpe?g)$/,
        use: 'file-loader?name=img/[name].[ext]'
      }
      // {
      //   test: /\.css$/,
      //   use: ExtractTextPlugin.extract({
      //     use: 'css-loader'
      //   })
      // }
    ]
  },
  plugins: [
    new webpack.ProvidePlugin({
      $: 'jquery',
      '$': 'jquery',
      'window.$': 'jquery',
      jQuery: 'jquery',
      'jQuery': 'jquery',
      'window.jQuery': 'jquery',
      jquery: 'jquery',
      'jquery': 'jquery',
      'window.jquery': 'jquery'
    }),
    new ExtractTextPlugin('css/[name].css'),
    new webpack.DllReferencePlugin({
      context: '.',
      manifest: require('./public/assets/vendor/json/vendor.json')
    }),
  ]
};
EN

回答 1

Stack Overflow用户

发布于 2020-04-11 00:19:44

我在Rails 5中的app/assets/样式表/applications.scss中使用了一些图像。当我用Webpacker切换到Rails 6时,我遇到了一个错误。

我让他们工作了

  1. 创建两个目录:app/javascript/映像/和app/javascript/styles/
  2. addind import('styles/application.css')到app/javascript/packs/application.js。
  3. 创建一个新文件app/javascript/styles/application.css,并将我的CSS移动到它
  4. 将图像移动到app/javascript/ images /文件夹
  5. 将app/javascript/styles/application.css中的url更改为backgound-image: image-url("../images/image.png");

我希望这能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50159826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档