【问题标题】:How to import plugins using WebPack 2 (jQuery & ddSlick)如何使用 WebPack 2 (jQuery & ddSlick) 导入插件
【发布时间】:2019-01-07 17:29:20
【问题描述】:

我正在尝试使用 ASP.NET Core 2.0 和 Vue.js 创建 SP 应用程序。在那个过程中,我坚持导入/实现一些额外的插件。在我想将 ddSlick 添加到 JQuery 1.7.2 之前,这或多或少是直截了当的。

首先,我实现了 jQuery,但只实现了 v 3.3。我想添加额外的 v. 1.7.2。这是 ddSlick 正常工作所必需的。

import $ from 'jquery';
window.jQuery = $; window.$ = $;

import ddSlick from 'ddslick'
import Vue from 'vue'
import axios from 'axios'
import router from './router/index'
import store from './store'
import { sync } from 'vuex-router-sync'
import App from 'components/app-root'
import { FontAwesomeIcon } from './icons'

// Registration of global components
Vue.component('icon', FontAwesomeIcon)

Vue.prototype.$http = axios

sync(store, router)

const app = new Vue({
  store,
  router,
  ...App
})

export {
  app,
  router,
  store
}

我尝试使用 import ddSlick from 'ddslick' 但它返回错误

'Module not found: Error: `Can't resolve 'ddslick' in C:\Develop\someApp-app\someApp.Frontend\ClientApp'`

在控制台中我得到

Uncaught Error: Cannot find module "ddslick"

我使用 npm install 安装了额外的依赖项,你可以在这里看到

"dependencies": {
    "axios": "^0.15.3",
    "core-js": "^2.5.3",
    "detached-jquery-1.7.2": "^1.7.2",
    "ddslick": "^1.0.2",
    "vue": "^2.5.16",
    "vue-router": "^2.8.1",
    "vue-server-renderer": "^2.5.16",
    "vue-template-compiler": "^2.5.16",
    "vuex": "^2.5.0",
    "vuex-router-sync": "^4.3.2"
  }

感谢您的宝贵时间:)

SamBokai 建议创建 npm ls 来发布结果(只发布一部分) 我们可以看到 ddslick 已安装

 +-- postcss-modules-scope@1.1.0
| | +-- css-selector-tokenizer@0.7.0 deduped
| | `-- postcss@6.0.23
| |   +-- chalk@2.4.1
| |   | +-- ansi-styles@3.2.1
| |   | | `-- color-convert@1.9.2 deduped
| |   | +-- escape-string-regexp@1.0.5 deduped
| |   | `-- supports-color@5.4.0 deduped
| |   +-- source-map@0.6.1
| |   `-- supports-color@5.4.0
| |     `-- has-flag@3.0.0 deduped
| +-- postcss-modules-values@1.3.0
| | +-- icss-replace-symbols@1.1.0
| | `-- postcss@6.0.23
| |   +-- chalk@2.4.1
| |   | +-- ansi-styles@3.2.1
| |   | | `-- color-convert@1.9.2 deduped
| |   | +-- escape-string-regexp@1.0.5 deduped
| |   | `-- supports-color@5.4.0 deduped
| |   +-- source-map@0.6.1
| |   `-- supports-color@5.4.0
| |     `-- has-flag@3.0.0 deduped
| `-- source-list-map@0.1.8
+-- ddslick@1.0.2
| `-- jquery@2.2.4
+-- detached-jquery-1.7.2@1.7.2
+-- eslint@4.19.1
| +-- ajv@5.5.2
| | +-- co@4.6.0
| | +-- fast-deep-equal@1.1.0
| | +-- fast-json-stable-stringify@2.0.0
| | `-- json-schema-traverse@0.3.1
| +-- babel-code-frame@6.26.0 deduped
| +-- chalk@2.4.1
  1. 更新

这是我的文件夹结构的截图

【问题讨论】:

  • 你跑npm install了吗?
  • @SamBokai 是的,我做到了。我用 npm install ddslick@1.0.2 --save
  • 你能做一个npm ls 并发布结果吗?

标签: npm webpack asp.net-core vue.js single-page-application


【解决方案1】:

【讨论】:

  • 嗯,我相信我们离我们更近了一步,但不幸的是,这并没有奏效。 :(
  • 让我在我的机器上建立一个小项目并测试一下。
  • @谢谢山姆 :)
  • 我认为问题在于您使用的是 detached-jquery。由于 jquery 与全局命名空间分离,插件 (ddslick) 无法注册。我要么切换到普通 jquery,然后按照 ddslick 开发人员 (designwithpc.com/Plugins/ddSlick) 的建议通过 https 加载 ddslick,要么了解如何加载带有 detached-jquery 的插件。
  • 谢谢,我试试看:)
猜你喜欢
  • 2020-11-19
  • 1970-01-01
  • 1970-01-01
  • 2017-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-05
  • 2017-04-25
相关资源
最近更新 更多