npm - Webpack:如何包含节点模块的 css?

标签 npm zurb-foundation webpack vue.js

我正在使用 vue-cli搭建一个 Vue.js + Webpack 应用程序的脚手架,我很困惑如何作为一个基本示例包含类似 Zurb Foundation 的内容.

我已经安装了所需的依赖项和加载器,例如 sass-loadercss-loader 但我只是对如何配置 Webpack 进行编译的基本理解感到困惑并包括,例如 node_modules/foundation-sites/scss/foundation.scss

在我的 webpack 配置中我有:

module: {
  loaders: [
    {
      test: /\.scss$/,
      loaders: ["style", "css", "sass"],
      include: projectRoot
    } ...

在我的基本 App.vue 组件中,我有:

<style src="./scss/app.scss" lang="scss"></style>

在我的 app.scss 中,我已经尝试过,但无济于事:

@import '~foundation-sites/scss/foundation.scss';

(在许多其他引发错误的语法错误尝试中)

我相信我遗漏了一些关于 Webpack 使用 npm 或 bower 包的方式的基本知识。任何方向将不胜感激,因为这似乎是一个简单的问题,我找不到明确的答案。

从 node_modules 复制所需的文件似乎也是一个不合逻辑或不太理想的解决方案。

最佳答案

我没有对我的 Webpack 配置进行任何更改。我是这样做的:

注意:我项目的组件位于“src/components”文件夹中,我的 app.scss 直接位于 src 文件夹中。我正在使用 foundation-sites v6.2.2 和 vue-cli 2.2.0。

在一个基础组件中我有这个:

<style src="../app.scss" lang="scss"></style>

现在,在这个 app.scss 中,我粘贴了 node_modules/foundation-sites/scss/settings/_settings.scss 中的所有内容以启用自定义。 您将必须在那里更改一行:

@import 'util/util';

应该变成:

@import '~foundation-sites/scss/util/util';

最后在你的 app.scss 的最底部添加两行:

@import '~foundation-sites/scss/foundation.scss';
@include foundation-everything;

这应该覆盖你的 css。

但是您可能还需要对 javascript 做一些事情,因为 Foundation 的 javascript 组件需要一些初始化。我自己还没有这样做,但这可能会有所帮助:http://forum.vuejs.org/topic/893/vue-js-foundation-6/6

关于npm - Webpack:如何包含节点模块的 css?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38162527/

相关文章:

node.js - 错误 : Cannot find module './build/Release/DTraceProviderBindings'

html - 具有可变高度的 Zurb Foundation 中的流体布局

javascript - 使用 webpack 将 sass 提取为 css

javascript - webpack 'import' 仅在顶层

jquery - npm install --保存 jquery

node.js - 如何将自定义证书颁发机构 (CA) 添加到 nodejs

angular - ngModuleType.ngModuleDef.id 未定义 - 导入 NguCarousel 模块时出现 Angular 8 问题

css - 居中对齐 Foundation 6 下拉菜单

css - Zurb Foundation 中的 CSS 导致 Internet Explorer 7 崩溃

node.js - React.semantic ui 图标未使用 webpack 中间件加载