Fungsi pengiraan berasingan dikongsi oleh kompilasi Vue ke dalam pakej berasingan
P粉421119778
2023-09-01 17:46:49
<p>Bagaimana hendak berkongsi <kod>vue/nuxt</code>kod khusus antara pakej yang berbeza? </p>
<p>Saya tidak mahu menggunakan <kod>monorepo</code>, tetapi saya mempunyai beberapa kod kongsi yang ingin saya pisahkan ke dalam pakejnya sendiri. Kod kongsi (pakej baharu) ini ditulis menggunakan <code>@nuxtjs/composition-api</code>, hanya <code>computed</code> dan <code> yang digunakan berulang kali dalam komponen berbeza /templates ;methods</code>. </p>
<p>Saya tidak mahu pakej ini disediakan sebagai pemalam. Sebaliknya, import terus untuk memanfaatkan gegaran pokok (sama seperti <code>composition-api</code>). </p>
<p>Saya biasa menggunakan <code>rollupjs</code> </p>
<pre class="brush:php;toolbar:false;">//Pakej baharu
//index.js
eksport { lalai sebagai isTrue } daripada './src/isTrue'
...
//src/isTrue
import { dikira } daripada '@nuxtjs/composition-api'
eksport lalai (p) =>
return computed(() => p === 'true') //Saya tidak pasti sama ada ini akan memusnahkan responsif? ! ? !
}</pre>
<p>Saya tiada masalah menyusunnya ke <kod>.ssr, .esm, .min</code> format melalui <code>rollupjs</code></p>
<p>Masalah berlaku apabila saya mengimport pakej baharu ke dalam fail yang berfungsi. </p>
<pre class="brush:php;toolbar:false;">import { isTrue } daripada 'new-package'
eksport lalai{
nama: 'testComp',
persediaan(props){
kembali {
isActive: isTrue(props.active)
}
}</pre>
<p> akan menghasilkan: </p>
<pre class="brush:php;toolbar:false;">[vue-composition-api] Vue.use(VueCompositionAPI) mesti dipanggil sebelum menggunakan sebarang fungsi. </pra>
<p>Saya faham bahawa <code>@nuxtjs/composition-api</code> ialah pembungkus untuk VueCompositionAPI. </p>
<p>Saya tidak mahu memasang pakej baharu sebagai pemalam, jadi saya meninggalkan pemasangan pakej baharu (contoh pemasangan: https://github.com/wuruoyun/vue-component-lib-starter/blob /master/src/install .js)</p>
Terpakai
options API
Gunakan
rollupjs
untuk menyusun library.js dan mengimportnya