javascript - 带有 npm 的客户端 Prism.js

标签 javascript npm prism.js

我正在尝试使用 Prism.js 语法高亮客户端作为 npm依赖项,而不是从 <script src="..."> 加载它标签。这是 package.json 中的 Prism 引用

{
    "dependencies": {
        "prismjs": "^1.5.1"
    }
}

以及我尝试在我的代码中使用它的方式

import Prism from 'prismjs'
Prism.highlightAll();

这会产生以下结果:

  • 标记化适用​​于基本语言(html、javascript...)
  • 分词不适用于其他特定语言(lua、handlebars...)
  • 对于所有语言,不应用语法着色(css 文件似乎没有加载)

所以我想知道

  • 是否有其他特定于语言的包(例如 prismjs-handlebars)?
  • 是否有特定主题的包(例如 prism-okaidia)可以导入 css?

--

长话短说

如何从 npm 加载/使用 Prism.js 客户端而不是来自脚本标签?

最佳答案

我最终找到了这样做的方法。

<强>1。将 style-loadercss-loader 添加到 package.json

{
    "dependencies": {
        "style-loader": "^0.13.1",
        "css-loader": "^0.23.0",
        "prismjs": "^1.5.1"
    }
}

<强>2。在 webpack.config.js

加载 css 文件
module: {
    loaders: [
        {
            test: /\.css/,
            loader: 'style-loader!css-loader'
        }
    ]
}

<强>3。在应用程序中导入所需的文件

import Prism from 'prismjs'
import 'prismjs/themes/prism-okaidia.css'
import 'prismjs/components/prism-handlebars.min.js'
import 'prismjs/components/prism-lua.min.js'

Prism.highlightAll();

关于javascript - 带有 npm 的客户端 Prism.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37678055/

相关文章:

javascript - 未处理的 JS 异常 : Can't find variable: process

html - 如何从呈现的组件获取 HTML 输出

javascript - 如何使用随 Node 安装的 Prism 插件

reactjs - React 中的 Prism.js html 示例

Javascript滚动到滚动元素

javascript - 如何检查json中的值是node js中的字符串还是数组

javascript - 浏览器同步关闭websocket

npm - 无法使用 Webpack : component dependencies were not found 运行 Vuejs

node.js - npm install 不会创建 node_modules 目录

NPM 始终安装最新的预发布版本