【问题标题】:after phoenix 1.3 upgrade app.js are not loadedphoenix 1.3 升级后app.js 没有加载
【发布时间】:2018-02-07 22:31:05
【问题描述】:

我在the phoenix upgrade description 之后将我的 phoenix 1.2 更新到了 1.3。

现在无法加载assets/js/app.jsUncaught Error: Cannot find module 'js/app' from '/'

调试问题后发现预期的模块是app而不是js/app

当我将 brunch-config.js autoRequire modules 中的模块名称更改为 ["app"] 而不是 ["js/app"] 时,它可以工作。我不明白问题出在哪里,或者我在我的应用中做了什么,默认设置不起作用。

这是我的assets/brunch-config.js

exports.config = {
  // See http://brunch.io/#documentation for docs.
  files: {
    javascripts: {
      joinTo: "js/app.js"

    },
    stylesheets: {
      joinTo: "css/app.css",
      order: {
        after: ["../priv/static/css/app.css"] // concat app.css last
      }
    },
    templates: {
      joinTo: "js/app.js"
    }
  },

  conventions: {
    assets: /^(static)/
  },

  // Phoenix paths configuration
  paths: {
    // Dependencies and current project directories to watch
    watched: ["static", "css", "js", "vendor"],

    // Where to compile files to
    public: "../priv/static"
  },

  // Configure your plugins
  plugins: {
    babel: {
      // Do not use ES6 compiler in vendor code
      ignore: [/vendor/]
    },
    copycat: {
      "fonts": ["node_modules/font-awesome/fonts"] // copy node_modules/font-awesome/fonts/* to priv/static/fonts/
    },
    sass: {
      options: {
        includePaths: [
          "node_modules/bootstrap-sass/assets/stylesheets",
          "node_modules/font-awesome/scss"
        ], // tell sass-brunch where to look for files to @import
        precision: 8 // minimum precision required by bootstrap-sass 
      }
    }
  //sass: {
    //   mode: "native" // This is the important part!
    // },
  },

  modules: {
    autoRequire: {
      "js/app.js": ["js/app"]
    }
  },

  npm: {
    enabled: true,
    globals: {
      $: 'jquery',
      jQuery: 'jquery'
    }
  }
};

我的assets/js/app.js 在这里:

import "phoenix_html"
import "./datetimepicker"  

感谢任何帮助、提示或想法来理解/解决问题。

【问题讨论】:

  • 我不明白你的问题是什么:根据你所说的,一切正常。此外,它应该是["app"],而不是["js/app"]
  • 但是,如果您查看升级说明,它使用 js/app 名称。不是app。我与升级说明中描述的相同。但它不像那里描述的那样工作。我必须改名字。 app.jsassets/js/app.js 中。我期待js/app。您如何得出结论,一定是app 而不是js/app。谢谢
  • “你是怎么得出结论的”——很简单:app 有效,js/app 无效。
  • ????这对我来说还不够。我试图了解这里发生了什么以及为什么它没有按预期工作。
  • 你是一个不友好的人,我希望像你这样的人不要回答任何问题,因为他们没有帮助,他们总是因为他们不理解的事情而责备别人。对我来说,寻找解决方案比用英语(我不太会说的一种语言)写问题要容易得多。我尽我所能理解这里发生了什么。如果我不像你那样有经验,那不是我如此傲慢和指责别人不知道的事情的理由。你不能只说什么,它正在工作,就是这样!

标签: javascript elixir phoenix-framework brunch


【解决方案1】:

问题与早午餐版本有关。 将早午餐更新为:

brunch@2.10.10

解决了问题。

【讨论】:

    猜你喜欢
    • 2018-05-02
    • 1970-01-01
    • 2018-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多