未找到模块。错误,无法解析 "cropbox "模块。无法解析 "cropbox

问题描述 投票:0回答:1

环境。

Rails 6.0.2 Ruby 2.5.3

我用yarn安装了cropperjs,然后我想用cropper.js,但是我得到了这个错误,好像是在fileUpload.jsso中无法导入cropbox模块,我改了路径,很遗憾我无法导入cropbox,你能帮帮我吗?

appjavascriptpacksfileUpload.js。

import cropbox from 'cropbox' **#Here is problem **



 uppy.on('upload-success', (file, response) => {
// retrieve uploaded file data
const uploadedFileData = response.body['data']

// set hidden field value to the uploaded file data so that it's submitted
// with the form as the attachment
hiddenInput.value = JSON.stringify(uploadedFileData)

cropbox(imagePreview, response.uploadURL, {
  onCrop(detail) {
    let fileData = JSON.parse(hiddenInput.value)
    fileData['metadata']['crop'] = detail
    hiddenInput.value = JSON.stringify(fileData)
  }
})
})

before:

import cropbox from 'cropbox'

after1:

import cropbox from 'javascript/packs/cropbox'

after2:

import cropbox from 'app/javascript/packs/cropbox'

webpacker.yml。

  # Note: You must restart bin/webpack-dev-server for changes to take effect

 default: &default
 source_path: app/javascript
 source_entry_path: packs
 public_root_path: public
 public_output_path: packs
 cache_path: tmp/cache/webpacker
 check_yarn_integrity: false
 webpack_compile_output: true

# Additional paths webpack should lookup modules
# ['app/assets', 'engine/foo/app/assets']
resolved_paths: []

# Reload manifest.json on all requests so we reload latest compiled packs
cache_manifest: false

# Extract and emit a css file
extract_css: false

static_assets_extensions:
  - .jpg
  - .jpeg
  - .png
  - .gif
  - .tiff
  - .ico
  - .svg
  - .eot
  - .otf
  - .ttf
  - .woff
  - .woff2

extensions:
  - .mjs
  - .js
  - .sass
  - .scss
  - .css
  - .module.sass
  - .module.scss
  - .module.css
  - .png
  - .svg
  - .gif
  - .jpeg
  - .jpg

development:
 <<: *default
  compile: true

# Verifies that correct packages and versions are installed by inspecting package.json, yarn.lock, 
and 
node_modules
check_yarn_integrity: true

# Reference: https://webpack.js.org/configuration/dev-server/
  dev_server:
  https: false
  host: localhost
  port: 3035
  public: localhost:3035
  hmr: false
  # Inline should be set to true if using HMR
  inline: true
  overlay: true
  compress: true
  disable_host_check: true
  use_local_ip: false
  quiet: false
  pretty: false
  headers:
   'Access-Control-Allow-Origin': '*'
  watch_options:
  ignored: '**/node_modules/**'


test:
  <<: *default
  compile: true

# Compile test packs to a separate directory
public_output_path: packs-test

production:
<<: *default

# Production depends on precompilation of packs prior to booting for 
performance.
compile: false

 # Extract and emit a css file
 extract_css: true

 # Cache manifest.json for performance
  cache_manifest: true

appjavascriptpackscropbox.js。

 import 'cropperjs/dist/cropper.css'

import Cropper from 'cropperjs'

function cropbox(image, url, { onCrop }) {
image.src = url

new Cropper(image, {
 aspectRatio: 1,
 viewMode: 1,
 guides: false,
 autoCropArea: 1.0,
 background: false,
 zoomable: false,
 crop: event => onCrop(event.detail)
 })
 }

export default cropbox

log:

ERROR in ./app/javascript/packs/fileUpload.js
Module not found: Error: Can't resolve 'cropbox' in 
'/home/master/prot/prottype2/app/javascript/packs'
@ ./app/javascript/packs/fileUpload.js 1:0-30 8:2-9

[Webpacker] Everything's up-to-date. Nothing to do
[Webpacker] Everything's up-to-date. Nothing to do
Completed 200 OK in 30482ms (Views: 30457.8ms | ActiveRecord: 0.3ms | Allocations: 15472)
javascript ruby-on-rails ruby webpacker
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.