Webpack 向网页包中生成的URL添加静态前缀
我想给webpack生成的每个静态url添加一个前缀(“/static/”)。但是,我希望生成的捆绑包忽略这一点,因此app.js和staticfile最终都位于同一个目录中。文件加载器允许使用Webpack 向网页包中生成的URL添加静态前缀,webpack,Webpack,我想给webpack生成的每个静态url添加一个前缀(“/static/”)。但是,我希望生成的捆绑包忽略这一点,因此app.js和staticfile最终都位于同一个目录中。文件加载器允许使用?name=static/[name].[ext]指定前缀,但我的包随后会在输出中的static/目录中 我想这样做是因为我正在为tornado的应用程序提供服务,所以每个路径都需要某种前缀,否则我无法为主页提供服务 网页包配置 module: { loaders: [ ...
?name=static/[name].[ext]
指定前缀,但我的包随后会在输出中的static/
目录中
我想这样做是因为我正在为tornado的应用程序提供服务,所以每个路径都需要某种前缀,否则我无法为主页提供服务
网页包配置
module: {
loaders: [
...
{test: /\.(jpg|ttf|html|eot|woff2?|svg)$/, loader: "file?name=static/[hash].[ext]"},
]
},
龙卷风形态
ROOT_DIR = os.path.abspath(os.path.dirname(__file__))
application = tornado.web.Application(handlers=[
(r'/', MainHandler),
(r'/socket', SocketHandler),
(r'/utilization', UtilizationHandler)
],
autoreload=True,
debug=False,
template_path=os.path.join(ROOT_DIR, 'templates'),
static_path=os.path.join(ROOT_DIR, 'public'),
static_url_prefix='/static/'
)
上面设置的
static\u url\u前缀实际上是默认值。我无法将其设置为空,或者根路径转到tornado的staticHandler
,而不是webpack.config.js中的mainHandler
设置publicPath选项
output: {
path: "/home/proj/public/assets",
publicPath: "/static/"
}
您是否尝试了output.publicPath
parameter(docs-)?谢谢您,这正是我所需要的。不过,我还有一个后续问题,请看我对已接受答案的评论,以防您能提供帮助。感谢您和Bob Sprone,这正是我想要的。必须抱怨文档在该段中没有使用“前缀”一词。一个主要问题是它似乎破坏了devServer,有没有办法只在build上设置选项?我通过在package.json中的npm run build
命令中添加--output public path='/static/'
解决了这个问题,而不是在webpack.config.js中使用publicPath