【发布时间】:2018-09-16 19:47:07
【问题描述】:
我尝试使用 rails-erb-loader。
在我的 home.component.ts 中
import templateString from './home.component.html';
我有一个 home.component.html.erb
<div class="row">...</div>
我还有一个由 rake webpacker:install:erb 生成的 app/javascript/packs/hello_erb.js.erb
我收到以下错误:
ERROR in ./app/javascript/packs/hello_erb.js.erb
Module build failed: Error: rails-erb-loader failed with code: 1
我猜这是加载ruby bin的配置错误,我想我可以解决这个问题,我真正的问题是以下错误:
ERROR in ./app/javascript/hello_angular/app/home/home.component.html.erb
Module parse failed: Unexpected token (1:0)
直接介绍我的配置:
config/webpack/loaders/erb.js
module.exports = {
test: /\.erb$/,
enforce: 'pre',
exclude: /node_modules/,
use: [{
loader: 'rails-erb-loader',
options: {
runner: (/^win/.test(process.platform) ? 'ruby ' : '') + 'bin/rails runner'
}
}]
}
config/webpack/environment.js
const { environment } = require('@rails/webpacker')
const typescript = require('./loaders/typescript')
environment.loaders.append('typescript', typescript)
const html = require('./loaders/html')
environment.loaders.append('html', html)
const erb = require('./loaders/erb')
environment.loaders.append('erb', erb)
module.exports = environment
我在 config/webpacker.yml 中启用了 .erb 扩展
我的直觉是我的.html.erb 出于某种原因被解析为 javascript……我不知道为什么。
我深入研究了webpacker 和rails_erb_loader 问题,但没有成功。
有什么想法吗?
顺便说一句,我看到了这个类似的问题: Webpacker in Rails Project using angular cannot import .html.erb and .css from external template
【问题讨论】:
标签: ruby-on-rails webpack erb webpacker